<SEC-DOCUMENT>0001174947-25-000741.txt : 20250512
<SEC-HEADER>0001174947-25-000741.hdr.sgml : 20250512
<ACCEPTANCE-DATETIME>20250512160240
ACCESSION NUMBER:		0001174947-25-000741
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		52
CONFORMED PERIOD OF REPORT:	20250331
FILED AS OF DATE:		20250512
DATE AS OF CHANGE:		20250512

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			ESPEY MFG & ELECTRONICS CORP
		CENTRAL INDEX KEY:			0000033533
		STANDARD INDUSTRIAL CLASSIFICATION:	ELECTRONIC COMPONENTS, NEC [3679]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				141387171
		STATE OF INCORPORATION:			NY
		FISCAL YEAR END:			0630

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-04383
		FILM NUMBER:		25934623

	BUSINESS ADDRESS:	
		STREET 1:		233 BALLSTON AVE
		STREET 2:		COR. CONGRESS & BALLSTON AVES.
		CITY:			SARATOGA SPRINGS
		STATE:			NY
		ZIP:			12866
		BUSINESS PHONE:		5185844100

	MAIL ADDRESS:	
		STREET 1:		233 BALLSTON AVE
		CITY:			SARATOGA SPRINGS
		STATE:			NY
		ZIP:			12866

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	ESPEY MANUFACTURING & ELECTRONICS CORP
		DATE OF NAME CHANGE:	19920703
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>esp-20250331.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Mon May 12 18:57:27 UTC 2025 -->
<html xmlns:compsci="http://compsciresources.com" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:dtr="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:ecd="http://xbrl.sec.gov/ecd/2025" xmlns:esp="http://espey.com/20250331" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:srt="http://fasb.org/srt/2025" xmlns:us-gaap="http://fasb.org/us-gaap/2025" xmlns:us-types="http://fasb.org/us-types/2025" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.w3.org/1999/xhtml">
<head>
     <title>ESP 20250331</title>

<meta content="text/html" http-equiv="Content-Type"/>
</head>
<body><div style="font: 10pt Times New Roman, Times, Serif"><div>




</div><!-- Field: Rule-Page --><div style="margin-top: 12pt; margin-bottom: 3pt; width: 100%"><div style="font-size: 1pt; border-top: Black 2pt solid; border-bottom: Black 1pt solid">&#160;</div></div><!-- Field: /Rule-Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-align: center; text-indent: -0.5in"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center; text-indent: 0pt"><b>UNITED STATES</b></p><div>



</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center; text-indent: 0pt"><b>SECURITIES AND EXCHANGE
COMMISSION</b></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt"><b>Washington, D. C. 20549</b></p><div>

</div><p style="font: bold 18pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt">FORM <ix:nonNumeric contextRef="c0" name="dei:DocumentType" id="ixv-7087">10-Q</ix:nonNumeric></p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; text-transform: uppercase; margin-top: 0pt; margin-bottom: 6pt; text-align: center"><ix:nonNumeric contextRef="c0" format="ixt-sec:boolballotbox" name="dei:DocumentQuarterlyReport" id="ixv-7088">&#9746;</ix:nonNumeric>
QUARTERLY Report Pursuant to Section 13 or 15(<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: lowercase">d</span>)
of the Securities Exchange Act of 1934</p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-indent: 0pt; text-align: center">For the quarterly period
ended <ix:nonNumeric contextRef="c0" format="ixt:date-monthname-day-year-en" name="dei:DocumentPeriodEndDate" id="ixv-7089">March 31, <ix:nonNumeric contextRef="c0" name="dei:DocumentFiscalYearFocus" id="ixv-7090">2025</ix:nonNumeric></ix:nonNumeric></p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-indent: 0pt; text-align: center">OR</p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt"><ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:DocumentTransitionReport" id="ixv-7091">&#9744;</ix:nonNumeric> TRANSITION REPORT
PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-indent: 0pt; text-align: center">Commission File Number <ix:nonNumeric contextRef="c0" name="dei:EntityFileNumber" id="ixv-7092">1-4383</ix:nonNumeric></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center"><img alt="" src="image_001.jpg"/></p><div>

</div><p style="font: bold 18pt Times New Roman, Times, Serif; margin: 0pt; text-align: center; text-indent: 0pt"><ix:nonNumeric contextRef="c0" name="dei:EntityRegistrantName" id="ixv-39"><b>ESPEY MFG. &amp; ELECTRONICS CORP.</b></ix:nonNumeric></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt">(Exact name of registrant as specified
in its charter)</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse; margin-bottom: 6pt; border-spacing: 0px;"> <tr style="font: bold 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="text-transform: uppercase; font: bold 10pt Times New Roman, Times, Serif; width: 34%; text-align: center"><ix:nonNumeric contextRef="c0" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="ixv-7093">New York</ix:nonNumeric></td> <td style="font: bold 10pt Times New Roman, Times, Serif; width: 33%; text-align: center">Trading Symbol</td> <td style="font: bold 10pt Times New Roman, Times, Serif; width: 33%; text-align: center"><ix:nonNumeric contextRef="c0" name="dei:EntityTaxIdentificationNumber" id="ixv-7094">14-1387171</ix:nonNumeric></td></tr> <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">(State of incorporation)</td> <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">ESP</td> <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">(I.R.S. Employer's Identification No.)</td></tr> </table><div>


</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center; text-indent: 0pt"><ix:nonNumeric contextRef="c0" name="dei:EntityAddressAddressLine1" id="ixv-7095">233 Ballston Avenue</ix:nonNumeric>, <ix:nonNumeric contextRef="c0" name="dei:EntityAddressCityOrTown" id="ixv-7096">Saratoga
Springs</ix:nonNumeric>, <ix:nonNumeric contextRef="c0" format="ixt-sec:stateprovnameen" name="dei:EntityAddressStateOrProvince" id="ixv-7097">New York</ix:nonNumeric> <ix:nonNumeric contextRef="c0" name="dei:EntityAddressPostalZipCode" id="ixv-7098">12866</ix:nonNumeric></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt">(Address of principal executive
offices)</p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center; text-indent: 0pt"><ix:nonNumeric contextRef="c0" name="dei:CityAreaCode" id="ixv-7099">518</ix:nonNumeric>-<ix:nonNumeric contextRef="c0" name="dei:LocalPhoneNumber" id="ixv-7100">245-4400</ix:nonNumeric></p><div>



</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt">(Registrant's telephone number,
including area code)</p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center; text-indent: 0pt">Securities registered pursuant
to Section 12(b) of the Act</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse; margin-bottom: 6pt; border-spacing: 0px;"> <tr style="font: bold 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="font: bold 10pt Times New Roman, Times, Serif; width: 40%; text-align: center">Title of each class</td> <td style="font: bold 10pt Times New Roman, Times, Serif; width: 20%; text-align: center">Trading Symbol</td> <td style="font: bold 10pt Times New Roman, Times, Serif; width: 40%; text-align: center">Name of each exchange on which registered</td></tr> <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><ix:nonNumeric contextRef="c0" name="dei:Security12bTitle" id="ixv-7101">Common Stock $.33-1/3 par value</ix:nonNumeric></td> <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><ix:nonNumeric contextRef="c0" name="dei:TradingSymbol" id="ixv-7102">ESP</ix:nonNumeric></td> <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><ix:nonNumeric contextRef="c0" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="ixv-7103">NYSE American</ix:nonNumeric></td></tr> </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify">Indicate by check mark whether the registrant
(1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12
months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements
for the past 90 days.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center"> &#9746;<ix:nonNumeric contextRef="c0" name="dei:EntityCurrentReportingStatus" id="ixv-7104">Yes</ix:nonNumeric> &#160;&#160;&#160;&#160;&#160;
&#9744; No</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify">Indicate by check mark whether the registrant
has submitted electronically every Interactive Date File required to be submitted and posted pursuant to Rule 405 of Regulation S-T during
the preceding 12 months (or for such shorter period that the registrant was required to submit and post such files).</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center"> &#9746;<ix:nonNumeric contextRef="c0" name="dei:EntityInteractiveDataCurrent" id="ixv-7105">Yes</ix:nonNumeric>
&#160;&#160;&#160;&#160;&#160; &#9744; No</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify">Indicate by check mark whether the registrant
is a large accelerated filer, an accelerated filer, a non-accelerated filer, or a smaller reporting company:</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-bottom: 0pt; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: top"> <td style="width: 50%"> &#9744; Large accelerated filer </td> <td style="width: 50%"> &#9744; <ix:nonNumeric contextRef="c0" format="ixt-sec:entityfilercategoryen" name="dei:EntityFilerCategory" id="ixv-7106">Non-accelerated filer</ix:nonNumeric> </td></tr> <tr style="vertical-align: top"> <td> &#9744; Accelerated filer</td> <td style="text-align: justify"> <ix:nonNumeric contextRef="c0" format="ixt:fixed-true" name="dei:EntitySmallBusiness" id="ixv-7107">&#9746;</ix:nonNumeric> Smaller reporting company</td></tr> <tr style="vertical-align: top"> <td style="text-align: justify">&#160;</td> <td style="text-align: justify"><ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:EntityEmergingGrowthCompany" id="ixv-7108">&#9744;</ix:nonNumeric> Emerging growth company</td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 6pt 0pt; text-align: justify">If an emerging growth company,
          indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or
          revised financial accounting standards provided pursuant to Section 13(a) of the Securities Exchange Act. &#9744;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify">Indicate by check mark whether the registrant
is a shell company (as defined in Rule 12b-2 of the Exchange Act). &#9744; Yes&#160;&#160;&#160;&#160; <ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:EntityShellCompany" id="ixv-7109">&#9746;</ix:nonNumeric> No</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify">At May 8, 2025, there were <ix:nonFraction contextRef="c1" decimals="INF" format="ixt:num-dot-decimal" name="dei:EntityCommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7110">2,831,399</ix:nonFraction>
shares outstanding of the registrant's Common stock, $.33-1/3 par value.&#160;</p><div>


</div><!-- Field: Page; Sequence: 1 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="margin: 0pt">&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">ESPEY MFG. &amp; ELECTRONICS CORP.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Quarterly Report on Form 10-Q</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">I N D E X</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse; border-spacing: 0px;">
  <tr style="vertical-align: top">
    <td>PART I</td>
    <td colspan="2"><a href="#a_001">FINANCIAL INFORMATION</a></td>
    <td style="vertical-align: bottom; text-align: right">PAGE</td></tr>
  <tr style="vertical-align: top">
    <td style="width: 0.75in">&#160;</td>
    <td style="width: 0.75in">&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; width: 0.5in; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 1</td>
    <td><a href="#a_001">Financial Statements:</a></td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td><a href="#a_002">Balance Sheets - March 31, 2025 (Unaudited) and June 30, 2024</a></td>
    <td style="vertical-align: bottom; text-align: right">1</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td><a href="#a_003">Statements of Comprehensive Income (Unaudited) - Three and Nine Months Ended March 31, 2025 and 2024</a></td>
    <td style="vertical-align: bottom; text-align: right">2</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td><a href="#a_004">Statements of Changes in Stockholders&#8217; Equity (Unaudited) &#8211; &#160;Three and Nine Months Ended March 31, 2025 and 2024</a></td>
    <td style="vertical-align: bottom; text-align: right">3</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td><a href="#a_005">Statements of Cash Flows (Unaudited) - Nine Months Ended March 31, 2025 and 2024</a></td>
    <td style="vertical-align: bottom; text-align: right">7</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td><a href="#a_006">Notes to Financial Statements (Unaudited)</a></td>
    <td style="vertical-align: bottom; text-align: right">8</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 2</td>
    <td><a href="#a_007">Management's Discussion and Analysis of Financial Condition and Results of Operations</a></td>
    <td style="vertical-align: bottom; text-align: right">15</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 3</td>
    <td><a href="#a_008">Quantitative and Qualitative Disclosures about Market Risk</a></td>
    <td style="vertical-align: bottom; text-align: right">21</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 4</td>
    <td><a href="#a_009">Controls and Procedures</a></td>
    <td style="vertical-align: bottom; text-align: right">21</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>PART II</td>
    <td colspan="2"><a href="#a_015">OTHER INFORMATION</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 1</td>
    <td><a href="#a_011">Legal Proceedings</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 2</td>
    <td><a href="#a_012">Unregistered Sales of Equity Securities and Use of Proceeds</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 3</td>
    <td><a href="#a_013">Defaults Upon Senior Securities</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 4</td>
    <td><a href="#a_014">Mine Safety Disclosures</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 5</td>
    <td><a href="#a_015">Other Information</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Item 6</td>
    <td><a href="#a_016">Exhibits</a></td>
    <td style="vertical-align: bottom; text-align: right">22</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="vertical-align: bottom; text-align: right">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td colspan="2"><a href="#a_017">SIGNATURES</a></td>
    <td style="vertical-align: bottom; text-align: right">23</td></tr>
  </table><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0">&#160;</p><div>


</div><!-- Field: Page; Sequence: 2 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="margin: 0pt">&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><div><a id="a_001"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">PART I: FINANCIAL INFORMATION</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">ESPEY MFG. &amp; ELECTRONICS CORP.</p><div>

</div><div><a id="a_002"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Balance Sheets</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">March 31, 2025 (Unaudited) and June 30, 2024</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p><div>

</div><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">June 30, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">ASSETS</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; width: 70%; text-align: left">Cash and cash equivalents</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" unitRef="usd" id="ixv-7111">13,859,462</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" unitRef="usd" id="ixv-7112">4,351,970</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Investment securities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7113">24,635,038</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7114">18,878,631</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Trade accounts receivable, less allowance for credit losses of $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd" id="ixv-7115"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd" id="ixv-7116">3,000</ix:nonFraction></ix:nonFraction></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" unitRef="usd" id="ixv-7117">6,407,177</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" unitRef="usd" id="ixv-7118">6,635,490</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Inventories:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt; text-align: left">Raw materials</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryRawMaterials" scale="0" unitRef="usd" id="ixv-7119">1,859,193</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryRawMaterials" scale="0" unitRef="usd" id="ixv-7120">1,693,448</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 50pt; text-align: left">Work-in-process</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryWorkInProcess" scale="0" unitRef="usd" id="ixv-7121">554,820</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryWorkInProcess" scale="0" unitRef="usd" id="ixv-7122">1,645,973</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt; text-align: left">Costs related to contracts in process</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryForLongTermContractsOrPrograms" scale="0" unitRef="usd" id="ixv-7123">14,174,050</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryForLongTermContractsOrPrograms" scale="0" unitRef="usd" id="ixv-7124">15,904,588</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 100pt; text-align: left">Total inventories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryNet" scale="0" unitRef="usd" id="ixv-7125">16,588,063</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryNet" scale="0" unitRef="usd" id="ixv-7126">19,244,009</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Net deferred tax assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="esp:DeferredTaxAssetsCurrent" scale="0" unitRef="usd" id="ixv-7127">923,934</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:DeferredTaxAssetsCurrent" scale="0" unitRef="usd" id="ixv-7128">895,154</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Prepaid expenses and other current assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" unitRef="usd" id="ixv-7129">4,945,190</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" unitRef="usd" id="ixv-7130">3,231,402</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 100pt; text-align: left">Total current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AssetsCurrent" scale="0" unitRef="usd" id="ixv-7131">67,358,864</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AssetsCurrent" scale="0" unitRef="usd" id="ixv-7132">53,236,656</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Property, plant and equipment, net</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd" id="ixv-7133">5,480,631</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd" id="ixv-7134">3,306,275</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 100pt; text-align: left">Total assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Assets" scale="0" unitRef="usd" id="ixv-7135">72,839,495</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Assets" scale="0" unitRef="usd" id="ixv-7136">56,542,931</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">LIABILITIES AND STOCKHOLDERS' EQUITY</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrent" scale="0" unitRef="usd" id="ixv-7137">2,075,635</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrent" scale="0" unitRef="usd" id="ixv-7138">3,751,209</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Accrued expenses:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 50pt; text-align: left">Salaries and wages</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedSalariesCurrent" scale="0" unitRef="usd" id="ixv-7139">850,695</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedSalariesCurrent" scale="0" unitRef="usd" id="ixv-7140">928,163</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt; text-align: left">Vacation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedVacationCurrent" scale="0" unitRef="usd" id="ixv-7141">593,723</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedVacationCurrent" scale="0" unitRef="usd" id="ixv-7142">511,144</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 50pt; text-align: left">ESOP payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="0" unitRef="usd" id="ixv-7143">276,683</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-0">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt; text-align: left">Other</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherEmployeeRelatedLiabilitiesCurrent" scale="0" unitRef="usd" id="ixv-7144">1,359,315</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherEmployeeRelatedLiabilitiesCurrent" scale="0" unitRef="usd" id="ixv-7145">757,552</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Payroll and other taxes withheld</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedPayrollTaxesCurrent" scale="0" unitRef="usd" id="ixv-7146">63,357</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedPayrollTaxesCurrent" scale="0" unitRef="usd" id="ixv-7147">56,862</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Contract liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" unitRef="usd" id="ixv-7148">21,018,310</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" unitRef="usd" id="ixv-7149">9,043,422</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Income taxes payable</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TaxesPayableCurrent" scale="0" unitRef="usd" id="ixv-7150">277,030</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TaxesPayableCurrent" scale="0" unitRef="usd" id="ixv-7151">220,607</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 100pt; text-align: left">Total current liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesCurrent" scale="0" unitRef="usd" id="ixv-7152">26,514,748</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesCurrent" scale="0" unitRef="usd" id="ixv-7153">15,268,959</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 100pt; text-align: left">Total liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Liabilities" scale="0" unitRef="usd" id="ixv-7154">26,514,748</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Liabilities" scale="0" unitRef="usd" id="ixv-7155">15,268,959</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 100pt; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Commitments and contingencies (See Note 5)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-1">&#160;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-2">&#160;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common stock, par value $.33-1/3 per share</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 50pt"><div style="-sec-ix-hidden: hidden-fact-3"><div style="-sec-ix-hidden: hidden-fact-4">Authorized <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" unitRef="shares" id="ixv-7156"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" unitRef="shares" id="ixv-7157">10,000,000</ix:nonFraction></ix:nonFraction> shares; Issued <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesIssued" scale="0" unitRef="shares" id="ixv-7158"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesIssued" scale="0" unitRef="shares" id="ixv-7159">3,129,874</ix:nonFraction></ix:nonFraction> shares as of March 31, 2025 and June 30, 2024. Outstanding <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7160">2,816,558</ix:nonFraction> and <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7161">2,733,958</ix:nonFraction> shares as of March 31, 2025 and June 30, 2024, respectively &#160;(includes <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesHeldInEmployeeTrustShares" scale="0" unitRef="shares" id="ixv-7162">195,234</ix:nonFraction> and <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesHeldInEmployeeTrustShares" scale="0" unitRef="shares" id="ixv-7163">211,487</ix:nonFraction> Unearned ESOP shares, respectively)</div></div></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockValue" scale="0" unitRef="usd" id="ixv-7164">1,043,291</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockValue" scale="0" unitRef="usd" id="ixv-7165">1,043,291</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Capital in excess of par value</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="0" unitRef="usd" id="ixv-7166">25,172,305</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="0" unitRef="usd" id="ixv-7167">23,930,428</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Accumulated other comprehensive gain</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" unitRef="usd" id="ixv-7168">6,731</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" unitRef="usd" id="ixv-7169">6,544</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Retained earnings</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" unitRef="usd" id="ixv-7170">29,287,337</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" unitRef="usd" id="ixv-7171">26,004,790</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock" scale="0" unitRef="usd" id="ixv-7172">55,509,664</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock" scale="0" unitRef="usd" id="ixv-7173">50,985,053</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Less:&#160;&#160;&#160;&#160;Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="esp:UnearnedEsopSharesCost" scale="0" unitRef="usd" id="ixv-7174">3,868,093</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:UnearnedEsopSharesCost" scale="0" unitRef="usd" id="ixv-7175">3,868,093</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt">Cost of <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7176">313,316</ix:nonFraction> and <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7177">395,916</ix:nonFraction> shares of common stock in treasury as of March 31, 2025 and June 30, 2024, respectively</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockValue" scale="0" unitRef="usd" id="ixv-7178">5,316,824</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockValue" scale="0" unitRef="usd" id="ixv-7179">5,842,988</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 100pt; text-align: left">Total stockholders&#8217; equity</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7180">46,324,747</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7181">41,273,972</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 100pt; text-align: left">Total liabilities and stockholders' equity</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" unitRef="usd" id="ixv-7182">72,839,495</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" unitRef="usd" id="ixv-7183">56,542,931</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="text-underline-style: double">&#160;</span></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The accompanying notes are an integral part of the financial statements.</p><div>


</div><!-- Field: Page; Sequence: 3; Options: NewSection --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->1<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">ESPEY MFG. &amp; ELECTRONICS CORP.</p><div>

</div><div><a id="a_003"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Statements of Comprehensive Income (Unaudited)</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Three and Nine Months Ended March 31, 2025 and
2024</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p><div>

</div><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">Three Months Ended</td><td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">Nine Months Ended</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">March 31,</td><td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">March 31,</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">2024</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 48%; text-align: left">Net sales</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7184">10,302,719</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7185">8,254,653</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7186">34,354,677</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7187">27,125,408</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt">Cost of sales</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CostOfRevenue" scale="0" unitRef="usd" id="ixv-7188">7,354,335</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CostOfRevenue" scale="0" unitRef="usd" id="ixv-7189">6,190,462</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CostOfRevenue" scale="0" unitRef="usd" id="ixv-7190">25,441,699</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CostOfRevenue" scale="0" unitRef="usd" id="ixv-7191">19,673,265</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd" id="ixv-7192">2,948,384</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd" id="ixv-7193">2,064,191</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd" id="ixv-7194">8,912,978</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd" id="ixv-7195">7,452,143</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Selling, general and administrative expenses</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" unitRef="usd" id="ixv-7196">1,197,262</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" unitRef="usd" id="ixv-7197">971,220</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" unitRef="usd" id="ixv-7198">3,418,206</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" unitRef="usd" id="ixv-7199">3,044,591</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Operating income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OperatingIncomeLoss" scale="0" unitRef="usd" id="ixv-7200">1,751,122</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OperatingIncomeLoss" scale="0" unitRef="usd" id="ixv-7201">1,092,971</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OperatingIncomeLoss" scale="0" unitRef="usd" id="ixv-7202">5,494,772</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OperatingIncomeLoss" scale="0" unitRef="usd" id="ixv-7203">4,407,552</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Other income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Interest income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InvestmentIncomeInterest" scale="0" unitRef="usd" id="ixv-7204">324,705</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InvestmentIncomeInterest" scale="0" unitRef="usd" id="ixv-7205">181,940</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InvestmentIncomeInterest" scale="0" unitRef="usd" id="ixv-7206">852,544</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InvestmentIncomeInterest" scale="0" unitRef="usd" id="ixv-7207">490,883</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; padding-bottom: 1pt">Other</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherNonoperatingIncome" scale="0" unitRef="usd" id="ixv-7208">11,601</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherNonoperatingIncome" scale="0" unitRef="usd" id="ixv-7209">2,881</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherNonoperatingIncome" scale="0" unitRef="usd" id="ixv-7210">30,595</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherNonoperatingIncome" scale="0" unitRef="usd" id="ixv-7211">22,275</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 40pt; text-align: left; padding-bottom: 1pt">Total other income</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" unitRef="usd" id="ixv-7212">336,306</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" unitRef="usd" id="ixv-7213">184,821</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" unitRef="usd" id="ixv-7214">883,139</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" unitRef="usd" id="ixv-7215">513,158</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Income before provision for income taxes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" unitRef="usd" id="ixv-7216">2,087,428</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" unitRef="usd" id="ixv-7217">1,277,792</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" unitRef="usd" id="ixv-7218">6,377,911</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" unitRef="usd" id="ixv-7219">4,920,710</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Provision for income taxes</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7220">382,941</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7221">245,862</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7222">1,166,608</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7223">998,866</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 50pt; text-align: left; padding-bottom: 2.5pt">Net income</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7224">1,704,487</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7225">1,031,930</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7226">5,211,303</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7227">3,921,844</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other comprehensive income, net of tax:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Unrealized  gain on investment securities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7228">1,727</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7229">2,151</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7230">187</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7231">7,568</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt; text-align: left; padding-bottom: 2.5pt">Total comprehensive income</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7232">1,706,214</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7233">1,034,081</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7234">5,211,490</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7235">3,929,412</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Net income per share:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares" id="ixv-7236">0.66</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares" id="ixv-7237">0.41</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares" id="ixv-7238">2.03</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares" id="ixv-7239">1.58</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares" id="ixv-7240">0.63</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares" id="ixv-7241">0.40</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares" id="ixv-7242">1.95</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares" id="ixv-7243">1.56</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Weighted average number of shares outstanding:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7244">2,599,960</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7245">2,491,906</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7246">2,569,514</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7247">2,480,153</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7248">2,699,674</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7249">2,571,921</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7250">2,668,928</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7251">2,519,708</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Dividends per share:</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-7252">0.250</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-7253">0.175</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-7254">0.750</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-7255">0.475</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="text-underline-style: double">&#160;</span></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The accompanying notes are an integral part of the financial statements.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 112.5pt; text-indent: 31.5pt">&#160;</p><div>


</div><!-- Field: Page; Sequence: 4 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->2<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: left">Espey Mfg. &amp; Electronics Corp.</p><div>

</div><div><a id="a_004"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Statements of Changes in Stockholders' Equity (Unaudited)</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; border-bottom: Black 0.5pt solid">Three Months Ended March 31, 2025</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><table cellpadding="0" style="font: 9pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; border-spacing: 0px;">
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Accumulated</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Capital in</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Other</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Unearned</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Total</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Outstanding</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Common</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Excess of</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Comprehensive</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Retained</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">ESOP</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Stockholders&#8217;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Amount</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Par Value</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Gain</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Earnings</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Amount</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Equity</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 10%; padding-bottom: 1pt">Balance as of December 31, 2024</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c7" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7256">2,796,758</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c7" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7257">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c8" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7258">24,851,718</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c9" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7259">5,004</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c10" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7260">28,232,545</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c11" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7261">333,116</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c11" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7262">5,447,820</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c12" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7263">3,868,093</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c13" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7264">44,816,645</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Comprehensive income:</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Net income</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c14" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7265">1,704,487</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7266">1,704,487</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Other comprehensive income, <br/>
net of tax of $<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" unitRef="usd" id="ixv-7267">363</ix:nonFraction></td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right"><ix:nonFraction contextRef="c15" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7268">1,727</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7269">1,727</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Total comprehensive income</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7270">1,706,214</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock options exercised</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c16" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7271">19,800</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c17" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7272">227,364</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c18" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7273">19,800</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c18" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7274">130,996</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7275">358,360</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock-based compensation</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c17" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7276">93,223</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7277">93,223</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 10pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Dividends paid on common stock<br/> $<ix:nonFraction contextRef="c4" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7278">0.25</ix:nonFraction> per share</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c14" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7279">649,695</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7280">649,695</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">Balance as of March 31, 2025</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c19" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7281">2,816,558</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7282">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c20" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7283">25,172,305</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c21" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7284">6,731</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c22" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7285">29,287,337</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c23" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7286">313,316</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c23" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7287">5,316,824</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c24" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7288">3,868,093</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7289">46,324,747</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The accompanying notes are an integral part of the financial statements.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><!-- Field: Page; Sequence: 5 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->3<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: left">Espey Mfg. &amp; Electronics Corp.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Statements of Changes in Stockholders' Equity (Unaudited)</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; border-bottom: Black 0.5pt solid">Nine Months Ended March 31, 2025</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><table cellpadding="0" style="font: 9pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; border-spacing: 0px;">
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Accumulated</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: justify">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Capital in</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Other</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"/><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Unearned</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Total</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: justify">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Outstanding</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Common</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Excess of</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Comprehensive</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Retained</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">ESOP</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Stockholders&#8217;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Shares</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Amount</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Par Value</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Gain</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Earnings</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Shares</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Amount</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Shares</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Equity</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 10%; padding-bottom: 1pt">Balance as of June 30, 2024</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c25" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7290">2,733,958</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c25" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7291">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c26" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7292">23,930,428</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c27" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7293">6,544</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c28" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7294">26,004,790</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c29" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7295">395,916</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c29" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7296">5,842,988</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c30" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7297">3,868,093</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7298">41,273,972</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">Comprehensive income:</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Net income</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c31" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7299">5,211,303</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7300">5,211,303</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Other comprehensive gain, <br/>
net of tax of $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" unitRef="usd" id="ixv-7301">39</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right"><ix:nonFraction contextRef="c32" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7302">187</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7303">187</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">Total comprehensive income</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7304">5,211,490</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">Stock options exercised</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c33" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7305">82,600</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c34" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7306">955,621</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">(<ix:nonFraction contextRef="c35" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7307">82,600</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c35" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7308">526,164</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7309">1,481,785</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">Stock-based compensation</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c34" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7310">286,256</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7311">286,256</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 10pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Dividends paid on common stock<br/> $<ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7312">0.75</ix:nonFraction> per share </td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">(<ix:nonFraction contextRef="c31" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7313">1,928,756</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">)</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7314">1,928,756</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">)</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">Balance as of March 31, 2025</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c19" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7315">2,816,558</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7316">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c20" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7317">25,172,305</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c21" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7318">6,731</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c22" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7319">29,287,337</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c23" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7320">313,316</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c23" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7321">5,316,824</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c24" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7322">3,868,093</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7323">46,324,747</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.25in">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The accompanying notes are an integral part of the financial statements.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><!-- Field: Page; Sequence: 6 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->4<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: left">Espey Mfg. &amp; Electronics Corp.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Statements of Changes in Stockholders' Equity (Unaudited)</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; border-bottom: Black 0.5pt solid">Three Months Ended March 31, 2024</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Accumulated</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Capital in</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Other</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Unearned</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Total</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Outstanding</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Common</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Excess of</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Comprehensive</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Retained</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">ESOP</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Stockholders&#8217;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Amount</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Par Value</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Gain</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Earnings</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Amount</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Equity</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 10%; padding-bottom: 1pt">Balance as of December 31, 2023</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c36" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7324">2,706,633</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c36" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7325">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c37" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7326">23,448,890</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c38" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7327">2,988</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c39" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7328">24,015,739</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c40" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7329">423,241</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c40" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7330">6,013,701</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c41" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7331">4,273,378</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c42" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7332">38,223,829</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Comprehensive income:</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Net income</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c43" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7333">1,031,930</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7334">1,031,930</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Other comprehensive income, <br/>
net of tax of $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" unitRef="usd" id="ixv-7335">452</ix:nonFraction></td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right"><ix:nonFraction contextRef="c44" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7336">2,151</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7337">2,151</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Total comprehensive income</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7338">1,034,081</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock options exercised</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c45" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7339">26,125</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7340">281,517</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c47" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7341">26,125</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7342">163,216</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7343">444,733</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock-based compensation</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7344">75,420</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7345">75,420</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 10pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Dividends paid on common stock<br/>
$<ix:nonFraction contextRef="c5" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7346">0.175</ix:nonFraction> per share</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c43" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7347">436,113</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7348">436,113</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">Balance as of March 31, 2024</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c48" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7349">2,732,758</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7350">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c49" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7351">23,805,827</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7352">5,139</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c51" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7353">24,611,556</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c52" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7354">397,116</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7355">5,850,485</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c53" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7356">4,273,378</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c54" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7357">39,341,950</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The accompanying notes are an integral part of the financial statements.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><!-- Field: Page; Sequence: 7 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->5<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: left">Espey Mfg. &amp; Electronics Corp.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Statements of Changes in Stockholders' Equity (Unaudited)</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; border-bottom: Black 0.5pt solid">Nine Months Ended March 31, 2024</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Accumulated</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Capital in</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Other</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Unearned</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Total</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Outstanding</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Common</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Excess of</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Comprehensive</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Retained</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Treasury</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">ESOP</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Stockholders&#8217;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Amount</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Par Value</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">(Loss) Gain</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Earnings</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Amount</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Shares</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right">Equity</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 10%; padding-bottom: 1pt">Balance as of June 30, 2023</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c55" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7358">2,702,633</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c55" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7359">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c56" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7360">23,283,245</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c57" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7361">2,429</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c58" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7362">21,867,720</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c59" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7363">427,241</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c59" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7364">6,038,691</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c60" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7365">4,273,378</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; width: 8%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c61" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7366">35,879,758</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Comprehensive income:</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Net income</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c62" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7367">3,921,844</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7368">3,921,844</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 20pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Other comprehensive income,<br/> net of tax of $<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" unitRef="usd" id="ixv-7369">1,589</ix:nonFraction></td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right"><ix:nonFraction contextRef="c63" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7370">7,568</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7371">7,568</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Total comprehensive income</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7372">3,929,412</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock options exercised</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c64" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7373">30,125</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c65" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7374">316,007</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c66" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7375">30,125</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c66" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7376">188,206</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7377">504,213</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock-based compensation</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c65" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7378">206,575</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7379">206,575</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 9pt Times New Roman, Times, Serif; text-indent: -10pt; padding-left: 10pt; white-space: nowrap; text-align: left; padding-bottom: 1pt">Dividends paid on common stock<br/> $<ix:nonFraction contextRef="c6" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7380">0.475</ix:nonFraction> per share</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c62" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7381">1,178,008</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7382">1,178,008</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">)</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; white-space: nowrap; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="font: 9pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">Balance as of March 31, 2024</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c48" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7383">2,732,758</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7384">1,043,291</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c49" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7385">23,805,827</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7386">5,139</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c51" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7387">24,611,556</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c52" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-7388">397,116</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7389">5,850,485</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c53" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7390">4,273,378</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="white-space: nowrap; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c54" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7391">39,341,950</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.25in">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt">The accompanying notes are an integral
part of the financial statements.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><!-- Field: Page; Sequence: 8 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->6<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">ESPEY MFG. &amp; ELECTRONICS CORP.</p><div>

</div><div><a id="a_005"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Statements of Cash Flows (Unaudited)</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Nine Months Ended March 31, 2025 and 2024</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&#160;</p><div>

</div><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash Flows from Operating Activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; width: 70%; text-align: left">Net income</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7392">5,211,303</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7393">3,921,844</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -20pt; padding-left: 20pt; text-align: left">Adjustments to reconcile net income to net cash provided by operating activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Stock-based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensation" scale="0" unitRef="usd" id="ixv-7394">286,256</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensation" scale="0" unitRef="usd" id="ixv-7395">206,575</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Depreciation" scale="0" unitRef="usd" id="ixv-7396">334,732</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Depreciation" scale="0" unitRef="usd" id="ixv-7397">343,825</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">ESOP compensation expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7398">435,298</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7399">311,664</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; text-align: left">Deferred income tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" sign="-" unitRef="usd" id="ixv-7400">28,780</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" sign="-" unitRef="usd" id="ixv-7401">916,006</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">(Gain) Loss on disposal of property, plant and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-5">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="0" sign="-" unitRef="usd" id="ixv-7402">590</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Changes in assets and liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Decrease in trade accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" sign="-" unitRef="usd" id="ixv-7403">228,313</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" sign="-" unitRef="usd" id="ixv-7404">439,862</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Decrease in income taxes receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-6">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="0" sign="-" unitRef="usd" id="ixv-7405">35,666</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Decrease in inventories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInInventories" scale="0" sign="-" unitRef="usd" id="ixv-7406">2,655,946</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInInventories" scale="0" sign="-" unitRef="usd" id="ixv-7407">278,237</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase in prepaid expenses and other current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" unitRef="usd" id="ixv-7408">1,713,788</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" sign="-" unitRef="usd" id="ixv-7409">728,069</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Decrease in accounts payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="0" sign="-" unitRef="usd" id="ixv-7410">1,675,574</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="0" unitRef="usd" id="ixv-7411">1,623,255</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Decrease in accrued salaries and wages</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccruedSalaries" scale="0" sign="-" unitRef="usd" id="ixv-7412">77,468</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccruedSalaries" scale="0" sign="-" unitRef="usd" id="ixv-7413">178,004</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Increase in vacation accrual</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="esp:IncreaseDecreaseInVacationAccrual" scale="0" unitRef="usd" id="ixv-7414">82,579</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="esp:IncreaseDecreaseInVacationAccrual" scale="0" sign="-" unitRef="usd" id="ixv-7415">119,481</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase in ESOP payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="esp:IncreaseDecreaseinESOPPayable" scale="0" sign="-" unitRef="usd" id="ixv-7416">158,615</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="esp:IncreaseDecreaseinESOPPayable" scale="0" sign="-" unitRef="usd" id="ixv-7417">110,982</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Increase in other accrued expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" scale="0" unitRef="usd" id="ixv-7418">601,763</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" scale="0" unitRef="usd" id="ixv-7419">437,611</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase in payroll and other taxes withheld</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld" scale="0" unitRef="usd" id="ixv-7420">6,495</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld" scale="0" unitRef="usd" id="ixv-7421">4,549</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Increase in contract liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="0" unitRef="usd" id="ixv-7422">11,974,888</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="0" sign="-" unitRef="usd" id="ixv-7423">375,829</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Increase in income taxes payable</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" scale="0" unitRef="usd" id="ixv-7424">56,423</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" scale="0" unitRef="usd" id="ixv-7425">719,217</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 60pt; text-align: left; padding-bottom: 1pt">Net cash provided by operating activities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" unitRef="usd" id="ixv-7426">18,219,771</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" unitRef="usd" id="ixv-7427">7,350,662</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Cash Flows from Investing Activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Additions to property, plant and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" unitRef="usd" id="ixv-7428">2,509,088</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" unitRef="usd" id="ixv-7429">4,501,997</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; text-align: left">Proceeds from grant award</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-7">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="esp:ProceedsFromGrantAward" scale="0" unitRef="usd" id="ixv-7430">4,228,722</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Proceeds from sale of property, plant and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-8">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="0" unitRef="usd" id="ixv-7431">150</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; text-align: left">Purchase of investment securities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsToAcquireInvestments" scale="0" unitRef="usd" id="ixv-7432">26,616,220</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsToAcquireInvestments" scale="0" unitRef="usd" id="ixv-7433">18,442,671</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left; padding-bottom: 1pt">Proceeds from sale/maturity of investment securities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" scale="0" unitRef="usd" id="ixv-7434">20,860,000</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" scale="0" unitRef="usd" id="ixv-7435">14,846,438</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 60pt; text-align: left; padding-bottom: 1pt">Net cash used in investing activities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" sign="-" unitRef="usd" id="ixv-7436">8,265,308</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" sign="-" unitRef="usd" id="ixv-7437">3,869,358</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Cash Flows from Financing Activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Dividends on common stock</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsOfDividendsCommonStock" scale="0" unitRef="usd" id="ixv-7438">1,928,756</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsOfDividendsCommonStock" scale="0" unitRef="usd" id="ixv-7439">1,178,008</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; text-align: left; padding-bottom: 1pt">Proceeds from exercise of stock options</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ProceedsFromRepurchaseOfEquity" scale="0" unitRef="usd" id="ixv-7440">1,481,785</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ProceedsFromRepurchaseOfEquity" scale="0" unitRef="usd" id="ixv-7441">504,213</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 60pt; text-align: left; padding-bottom: 1pt">Net cash used in financing activities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" sign="-" unitRef="usd" id="ixv-7442">446,971</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" sign="-" unitRef="usd" id="ixv-7443">673,795</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Increase in cash and cash equivalents</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" scale="0" unitRef="usd" id="ixv-7444">9,507,492</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" scale="0" unitRef="usd" id="ixv-7445">2,807,509</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Cash and cash equivalents, beginning of period</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd" id="ixv-7446">4,351,970</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c61" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd" id="ixv-7447">2,748,755</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Cash and cash equivalents, end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd" id="ixv-7448">13,859,462</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c54" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd" id="ixv-7449">5,556,264</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Supplemental Schedule of Cash Flow Information:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; text-align: left">Income taxes paid</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxesPaidNet" scale="0" unitRef="usd" id="ixv-7450">1,139,015</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxesPaidNet" scale="0" unitRef="usd" id="ixv-7451">1,162,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The accompanying notes are an integral part of the financial statements.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;&#160;</p><div>

</div><!-- Field: Page; Sequence: 9 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->7<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">ESPEY MFG. &amp; ELECTRONICS CORP.</p><div>

</div><div><a id="a_006"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="text-decoration:underline">Notes to Financial Statements (Unaudited)</span></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock" id="ixv-5132"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 1. Basis of Presentation</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In the opinion of management the accompanying
unaudited financial statements contain all adjustments (consisting of normal recurring adjustments) necessary for a fair presentation
of the results for such periods. The results for any interim period are not necessarily indicative of the results to be expected for the
full fiscal year. Certain information and footnote disclosures normally included in financial statements prepared in accordance with United
States generally accepted accounting principles have been condensed or omitted. The preparation of these financial statements requires
us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues and expenses, and related disclosure
of assets and liabilities. On an ongoing basis, we evaluate our estimates and judgments, including those related to revenue recognition,
inventories, income taxes, and stock-based compensation. Specific to inventories, including work-in-process and contracts in process,
management evaluates, quarterly, those estimates used in determining the cost to complete for each contract on Espey Mfg. &amp; Electronics
Corp.&#8217;s (the &#8220;Company&#8221;) sales backlog. The change in estimates may affect the reported amount of inventories and gross
profit in the current or a future period and could result in the Company recording a loss contingency when a loss is determined to be
probable and reasonably estimated. Management bases its estimates on historical experience and on various other factors that are believed
to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying amounts of assets
and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates under different assumptions
or conditions. These financial statements should be read in conjunction with the Company's most recent audited financial statements included
in its report on Form 10-K for the year ended June 30, 2024. Certain reclassifications may have been made to the prior year financial
statements to conform to the current year presentation.</p></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_InvestmentTextBlock-c0_cont_1" escape="true" name="us-gaap:InvestmentTextBlock" id="ixv-5139"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0; text-align: justify">Note 2. Investment Securities</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">FASB Accounting Standards Codification
(&#8220;ASC&#8221;) 820 &#8220;Fair Value Measurements and Disclosures&#8221; establishes a fair value hierarchy which requires an
entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard
describes three levels of inputs that may be used to measure fair value:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 22.5pt"/><td style="width: 13.5pt"><span>&#9726;</span></td><td style="text-align: justify">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity
has the ability to access as of the measurement date.</td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 22.5pt"/><td style="width: 13.5pt"><span>&#9726;</span></td><td style="text-align: justify">Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar
assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
market data.</td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 22.3pt"/><td style="width: 13.7pt"><span>&#9726;</span></td><td style="text-align: justify">Level 3: Significant unobservable inputs that reflect a reporting entity&#8217;s own assumptions about
the assumptions that market participants would use in pricing an asset or liability.</td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The carrying amounts of financial instruments,
including cash and cash equivalents, short term investments, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of March 31, 2025 and June 30, 2024 because of the immediate or short-term maturity of these financial instruments.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Investment securities at March 31, 2025 and June
30, 2024 consisted of certificates of deposit, municipal bonds and U.S. Treasury bills. The Company classifies investment securities as
available-for-sale which have been determined to be level 1 assets. <ix:nonNumeric contextRef="c0" continuedAt="_DebtSecuritiesAvailableForSaleTableTextBlock-c0_cont_1" escape="true" name="us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock" id="ixv-7452">The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at March 31, 2025 and June 30, 2024 are as follows:</ix:nonNumeric></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<ix:continuation id="_DebtSecuritiesAvailableForSaleTableTextBlock-c0_cont_1"><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Gross</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Gross</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Amortized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unrealized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unrealized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Fair</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Cost</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Gains</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Losses</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Value</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">March 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 40%">Certificates of deposit</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c67" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7453">23,492,000</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-9">&#8212;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-10">&#8212;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c67" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7454">23,492,000</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c68" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7455">1,134,518</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c68" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7456">8,988</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c68" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd" id="ixv-7457">468</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c68" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7458">1,143,038</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">U.S. Treasury bills</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-11">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-12">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-13">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-14">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7459">24,626,518</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7460">8,988</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd" id="ixv-7461">468</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7462">24,635,038</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">June 30, 2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Certificates of deposit</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c70" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7463">17,651,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-15">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-16">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c70" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7464">17,651,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7465">709,059</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7466">5,824</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd" id="ixv-7467">3,313</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7468">711,570</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; text-align: left">U.S. Treasury bills</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c72" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7469">510,288</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c72" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7470">5,773</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-17">&#8212;</div></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c72" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7471">516,061</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7472">18,870,347</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7473">11,597</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd" id="ixv-7474">3,313</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7475">18,878,631</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 10 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->8<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>



</div><ix:continuation id="_InvestmentTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The portfolio is diversified and highly liquid
and primarily consists of investment grade fixed income instruments. At March 31, 2025, the Company did not have any investments in individual
securities that have been in a continuous loss position considered to be other than temporary.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock" id="ixv-5434"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of March 31, 2025 and June 30, 2024, the remaining
contractual maturities of available-for-sale debt securities were as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Years to Maturity</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Less than</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">One to</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">One Year</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Five Years</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Total</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">March 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 55%; padding-bottom: 1pt">Available-for-sale</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" scale="0" unitRef="usd" id="ixv-7476">23,139,022</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" scale="0" unitRef="usd" id="ixv-7477">1,496,016</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7478">24,635,038</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-decoration: underline">June 30, 2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Available-for-sale</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" scale="0" unitRef="usd" id="ixv-7479">17,889,582</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" scale="0" unitRef="usd" id="ixv-7480">989,049</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7481">18,878,631</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table></ix:nonNumeric></ix:continuation><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_EarningsPerShareTextBlock-c0_cont_1" escape="true" name="us-gaap:EarningsPerShareTextBlock" id="ixv-5541"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 3. Net Income per Share</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Basic net income per share excludes dilution and
is computed by dividing net income available to common stockholders by the weighted average number of common shares outstanding for the
period. Diluted net income per share reflects the potential dilution that could occur if securities or other contracts to issue common
stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the income of the
Company. The computation of diluted net income per share excluded options to purchase <ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7482"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7483">2,500</ix:nonFraction></ix:nonFraction> shares of our common stock for the three and
nine months ended March 31, 2025 and <ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7484"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7485">60,766</ix:nonFraction></ix:nonFraction> shares for the three and nine months ended March 31, 2024, as the effect of including them
would be anti-dilutive. As unearned shares owned by the Company&#8217;s sponsored leveraged employee stock ownership plan (the &#8220;ESOP&#8221;)
are released or committed-to-be-released, the shares become outstanding for earnings-per-share computations.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="ixv-5546"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the three month
periods ended March 31:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right">2025</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right">2024</td>
    <td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Numerator:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 70%; padding-bottom: 2.5pt">Net income</td>
    <td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: black 2.25pt double">$</td>
    <td style="width: 12%; border-bottom: black 2.25pt double; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7486">1,704,487</ix:nonFraction></td>
    <td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: black 2.25pt double">$</td>
    <td style="width: 12%; border-bottom: black 2.25pt double; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7487">1,031,930</ix:nonFraction></td>
    <td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Denominator:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Basic EPS:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7488">2,796,758</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7489">2,706,633</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7490">200,652</ix:nonFraction></td>
    <td style="white-space: nowrap">)</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7491">222,566</ix:nonFraction></td>
    <td style="white-space: nowrap">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7492">3,794</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7493">7,778</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average ESOP shares earned during the period</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesIssuedBasic" scale="0" unitRef="shares" id="ixv-7494">60</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesIssuedBasic" scale="0" unitRef="shares" id="ixv-7495">61</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Denominator for basic earnings per common shares &#8211;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" scale="0" unitRef="shares" id="ixv-7496">2,599,960</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" scale="0" unitRef="shares" id="ixv-7497">2,491,906</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted EPS:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingDiluted" scale="0" unitRef="shares" id="ixv-7498">2,796,758</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingDiluted" scale="0" unitRef="shares" id="ixv-7499">2,706,633</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7500">200,652</ix:nonFraction></td>
    <td style="white-space: nowrap">)</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7501">222,566</ix:nonFraction></td>
    <td style="white-space: nowrap">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7502">3,794</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7503">7,778</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Weighted average ESOP shares earned during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="0" unitRef="shares" id="ixv-7504">60</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="0" unitRef="shares" id="ixv-7505">61</ix:nonFraction></td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average dilutive effect of stock options</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" unitRef="shares" id="ixv-7506">99,714</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" unitRef="shares" id="ixv-7507">80,015</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Denominator for diluted earnings per common shares &#8211;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7508">2,699,674</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7509">2,571,921</ix:nonFraction></td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td></tr>
  </table></ix:nonNumeric></ix:nonNumeric><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 11 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->9<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><ix:continuation id="_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-c0_cont_1"><ix:continuation id="_EarningsPerShareTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the nine month
periods ended March 31:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Numerator:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 70%; text-align: left; padding-bottom: 2.5pt">Net income</td><td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7510">5,211,303</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7511">3,921,844</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Denominator:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Basic EPS:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7512">2,733,958</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingBasic" scale="0" unitRef="shares" id="ixv-7513">2,702,633</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7514">211,487</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7515">233,646</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7516">41,606</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7517">5,606</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average ESOP shares earned during the period</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesIssuedBasic" scale="0" unitRef="shares" id="ixv-7518">5,437</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesIssuedBasic" scale="0" unitRef="shares" id="ixv-7519">5,560</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 20pt">Denominator for basic earnings per common shares &#8211;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" scale="0" unitRef="shares" id="ixv-7520">2,569,514</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" scale="0" unitRef="shares" id="ixv-7521">2,480,153</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Diluted EPS:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingDiluted" scale="0" unitRef="shares" id="ixv-7522">2,733,958</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="esp:CommonSharesOutstandingDiluted" scale="0" unitRef="shares" id="ixv-7523">2,702,633</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7524">211,487</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" scale="0" unitRef="shares" id="ixv-7525">233,646</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7526">41,606</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7527">5,606</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Weighted average ESOP shares earned during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="0" unitRef="shares" id="ixv-7528">5,437</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="0" unitRef="shares" id="ixv-7529">5,560</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average dilutive effect of stock options</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" unitRef="shares" id="ixv-7530">99,414</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" unitRef="shares" id="ixv-7531">39,555</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Denominator for diluted earnings per common shares &#8211;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7532">2,668,928</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares" id="ixv-7533">2,519,708</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation></ix:continuation><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_1" escape="true" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="ixv-5985"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Note 4. Stock Based Compensation</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: italic 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-style: normal; font-weight: normal">The
Company follows ASC 718 &#8220;Compensation - Stock Compensation&#8221; in establishing standards for the accounting for
transactions in which an entity exchanges its equity instruments for goods or services, as well as transactions in which an entity
incurs liabilities in exchange for goods or services that are based on the fair value of the entity&#8217;s equity instruments or
that may be settled by the issuance of those equity instruments. ASC 718 requires that the cost resulting from all share-based
payment transactions be recognized in the financial statements based on the fair value of the share-based payment. ASC 718
establishes fair value as the measurement objective in accounting for share-based payment transactions with employees, except for
equity instruments held by employee share ownership plans. </span></p>

<p style="font: italic 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Total stock-based compensation expense recognized
in the statements of comprehensive income for the three-month periods ended March 31, 2025 and 2024 was $<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7534">93,223</ix:nonFraction> and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7535">75,420</ix:nonFraction>, respectively,
before income taxes. The amount of this stock-based compensation expense related to non-qualified stock options (&#8220;NQSOs&#8221;)
for the three-month periods ended March 31, 2025 and 2024 was $<ix:nonFraction contextRef="c73" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7536">8,362</ix:nonFraction> and $<ix:nonFraction contextRef="c74" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7537">8,179</ix:nonFraction>, respectively. The deferred tax benefit related to the
NQSOs as of March 31, 2025 and 2024 was approximately $<ix:nonFraction contextRef="c73" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7538">1,756</ix:nonFraction> and $<ix:nonFraction contextRef="c74" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7539">1,718</ix:nonFraction>, respectively. Total stock-based compensation expense recognized
in the statements of comprehensive income for the nine-month periods ended March 31, 2025 and 2024 was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7540">286,256</ix:nonFraction> and $<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7541">206,575</ix:nonFraction>, respectively,
before income taxes. The amount of this stock-based compensation expense related to NQSOs for the nine-month periods ended March 31, 2025
and 2024 was $<ix:nonFraction contextRef="c75" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7542">23,783</ix:nonFraction> and $<ix:nonFraction contextRef="c76" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7543">26,724</ix:nonFraction>, respectively. The deferred tax benefit related to the NQSOs as of March 31, 2025 and 2024 was approximately
$<ix:nonFraction contextRef="c75" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7544">4,994</ix:nonFraction> and $<ix:nonFraction contextRef="c76" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7545">5,612</ix:nonFraction>, respectively. The remaining stock option expense in each year related to incentive stock options (&#8220;ISOs&#8221;)
which are not deductible by the Company when exercised, assuming a qualifying disposition and as such no deferred tax benefit was established
related to these amounts.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of March 31, 2025, there was $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd" id="ixv-7546">340,519</ix:nonFraction> of unrecognized
compensation cost related to stock option awards that is expected to be recognized as expense over the next <ix:nonNumeric contextRef="c0" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="ixv-7547">1.75</ix:nonNumeric> years, of which $<ix:nonFraction contextRef="c77" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd" id="ixv-7548">311,672</ix:nonFraction>
relates to ISOs and $<ix:nonFraction contextRef="c78" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd" id="ixv-7549">28,847</ix:nonFraction> relates to NQSOs. The total deferred tax benefit related to these awards is expected to be $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7550">6,058</ix:nonFraction>.</p></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 12 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->10<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><ix:continuation continuedAt="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_2" id="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company has one employee stock option plan
under which options or stock awards may be granted, the 2017 Stock Option and Restricted Stock Plan (the "2017 Plan"). The Board
of Directors may grant options to acquire shares of common stock to employees and non-employee directors of the Company at the fair market
value of the common stock on the date of grant. The maximum aggregate number of shares of Common Stock subject to options or awards to
non-employee directors is <ix:nonFraction contextRef="c79" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" scale="0" unitRef="shares" id="ixv-7551">133,000</ix:nonFraction> and the maximum aggregate number of shares of Common Stock subject to options or awards granted to non-employee
directors during any single fiscal year is the lesser of <ix:nonFraction contextRef="c80" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" scale="0" unitRef="shares" id="ixv-7552">13,300</ix:nonFraction> and <ix:nonNumeric contextRef="c80" name="esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" id="ixv-7553">33 1/3%</ix:nonNumeric> of the total number of shares subject to options or awards
granted in such fiscal year. The maximum number of shares subject to options or awards granted to any individual employee may not exceed
<ix:nonFraction contextRef="c81" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" scale="0" unitRef="shares" id="ixv-7554">15,000</ix:nonFraction> in a fiscal year. Generally, options granted have a <ix:nonNumeric contextRef="c0" continuedAt="_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-c0_cont_1" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="ixv-7555">two</ix:nonNumeric>-year vesting period based on <ix:nonNumeric contextRef="c82" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="ixv-7556">two<ix:continuation id="_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-c0_cont_1"> years</ix:continuation></ix:nonNumeric> of continuous service and have a
ten-year contractual life. Option grants provide for accelerated vesting if there is a change in control. Shares issued upon the exercise
of options are from those held in Treasury. Options covering <ix:nonFraction contextRef="c83" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="0" unitRef="shares" id="ixv-7558">400,000</ix:nonFraction> shares are authorized for issuance under the 2017 Plan. As of March
31, 2025, options covering <ix:nonFraction contextRef="c84" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7559">103,925</ix:nonFraction> shares have been exercised and options covering <ix:nonFraction contextRef="c85" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares" id="ixv-7560">293,606</ix:nonFraction> shares are outstanding. Options covering <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" unitRef="shares" id="ixv-7561">2,469</ix:nonFraction>
shares remain available for grant after factoring the cancelled shares, which are eligible to be re-granted. While no further grants of
options may be made under the Company&#8217;s 2007 Stock Option and Restricted Stock Plan, as of March 31, 2025, <ix:nonFraction contextRef="c86" decimals="INF" format="ixt:num-dot-decimal" name="esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" scale="0" unitRef="shares" id="ixv-7562">24,350</ix:nonFraction> options were outstanding
under such plan of which all are vested and exercisable.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">ASC 718 requires the use of a valuation model
to calculate the fair value of stock-based awards. The Company has elected to use the Black-Scholes option valuation model, which incorporates
various assumptions including those for dividend yield, volatility, expected life and interest rates.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="ixv-6012"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The table below outlines the weighted average
assumptions that the Company used to calculate the fair value of each option award for the nine months ended March 31, 2025 and 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; text-align: left">Dividend yield</td><td style="width: 1%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c0" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" unitRef="pure" id="ixv-7563">3.79</ix:nonFraction>%</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c6" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" unitRef="pure" id="ixv-7564">3.63</ix:nonFraction>%</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Company&#8217;s expected volatility</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" unitRef="pure" id="ixv-7565">32.85</ix:nonFraction>%</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" unitRef="pure" id="ixv-7566">31.20</ix:nonFraction>%</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Risk-free interest rate</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" unitRef="pure" id="ixv-7567">4.35</ix:nonFraction>%</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" unitRef="pure" id="ixv-7568">4.39</ix:nonFraction>%</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Expected term</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonNumeric contextRef="c0" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="ixv-7569">5.1</ix:nonNumeric> yrs</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonNumeric contextRef="c6" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="ixv-7570">5.3</ix:nonNumeric> yrs</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Weighted average fair value per share of options granted during the period</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7571">5.37</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c6" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7572">4.03</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> </table></ix:nonNumeric>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company declared and paid regular cash dividends
of $<ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="esp:DividendPayableAmountPerShare" scale="0" unitRef="usdPershares" id="ixv-7573">0.75</ix:nonFraction> per share for the nine months ended March 31, 2025 and paid $<ix:nonFraction contextRef="c6" decimals="3" format="ixt:num-dot-decimal" name="esp:DividendPayableAmountPerShare" scale="0" unitRef="usdPershares" id="ixv-7574">0.475</ix:nonFraction> cash dividends for the nine months ended March 31, 2024. Expected
stock price volatility is based on the historical volatility of the Company&#8217;s stock. The risk-free interest rate is based on the
implied yield available on U.S. Treasury issues with an equivalent term approximating the expected life of the options. The expected option
term (in years) represents the estimated period of time until exercise and is based on actual historical experience.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="ixv-6077"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table summarizes stock option activity
during the nine months ended March 31, 2025:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="15" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Employee Stock Option Plans</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Number of</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Shares</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Remaining</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Aggregate</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Subject</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Exercise</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Contractual</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Intrinsic</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Price</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Term</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Value</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 48%">Balance at July 1, 2024</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right"><ix:nonFraction contextRef="c87" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares" id="ixv-7575">322,056</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">$</td><td style="width: 8%; text-align: right"><ix:nonFraction contextRef="c87" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7576">18.41</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right"><ix:nonNumeric contextRef="c88" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="ixv-7577">6.59</ix:nonNumeric></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-18">&#160;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td>Granted</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c89" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" unitRef="shares" id="ixv-7578">79,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c89" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7579">21.79</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonNumeric contextRef="c89" format="ixt-sec:duryear" name="esp:WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" id="ixv-7580">9.29</ix:nonNumeric></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Exercised</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c89" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7581">82,600</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c89" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7582">17.94</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-19">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1pt">Forfeited or expired</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c89" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" unitRef="shares" id="ixv-7583">500</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">)</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c89" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7584">16.54</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-20">&#8212;</div></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt">Outstanding at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares" id="ixv-7585">317,956</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7586">19.37</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonNumeric contextRef="c89" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="ixv-7587">6.83</ix:nonNumeric></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="0" unitRef="usd" id="ixv-7588">2,471,791</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 2.5pt">Vested or expected to vest at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" scale="0" unitRef="shares" id="ixv-7589">302,783</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7590">19.10</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonNumeric contextRef="c89" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" id="ixv-7591">6.64</ix:nonNumeric></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" scale="0" unitRef="usd" id="ixv-7592">2,363,682</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt">Exercisable at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" unitRef="shares" id="ixv-7593">162,556</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7594">19.38</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonNumeric contextRef="c89" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="ixv-7595">4.86</ix:nonNumeric></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="0" unitRef="usd" id="ixv-7596">1,262,070</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> </table></ix:nonNumeric>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The aggregate intrinsic value in the table above
represents the total pretax intrinsic value (the difference between the closing sale price of the Company&#8217;s common stock as reported
on the NYSE American on March 31, 2025 and the exercise price, multiplied by the number of in-the-money options) that would have been
received by the option holders if all option holders had exercised their options on March 31, 2025. This amount changes based on the fair
market value of the Company&#8217;s common stock. The intrinsic value of options exercised during the nine months ended March 31, 2025
and 2024 was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" unitRef="usd" id="ixv-7597">841,603</ix:nonFraction> and $<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" unitRef="usd" id="ixv-7598">186,186</ix:nonFraction>, respectively.</p></ix:continuation><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 13 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->11<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock" id="ixv-6279"><ix:continuation id="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The following table summarizes changes in non-vested stock options
during the nine months ended March 31, 2025:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; margin-left: auto; margin-right: auto; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted Number</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">of Shares</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Grant Date</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Subject</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Fair Value</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">(per Option)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Non-vested at July 1, 2024</td><td style="width: 3%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="0" unitRef="shares" id="ixv-7599">147,300</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7600">4.15</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" unitRef="shares" id="ixv-7601">79,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7602">5.37</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" scale="0" unitRef="shares" id="ixv-7603">70,400</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7604">4.16</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Forfeited or expired</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" scale="0" unitRef="shares" id="ixv-7605">500</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">)</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7606">4.03</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Non-vested at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="0" unitRef="shares" id="ixv-7607">155,400</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7608">4.76</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr>
  </table></ix:continuation></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="ixv-6361"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Note 5. Commitments and Contingencies</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company from time to time, enters into standby
letters of credit agreements with financial institutions primarily relating to the guarantee of future performance on certain contracts.
Contingent liabilities on outstanding standby letters of credit agreements aggregated to <ix:nonFraction contextRef="c2" decimals="0" format="ixt:fixed-zero" name="us-gaap:LettersOfCreditOutstandingAmount" scale="0" unitRef="usd" id="ixv-7609"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:fixed-zero" name="us-gaap:LettersOfCreditOutstandingAmount" scale="0" unitRef="usd" id="ixv-7610">zero</ix:nonFraction></ix:nonFraction> at March 31, 2025 and June 30, 2024. The
Company, as a U.S. Government contractor, is subject to audits, reviews, and investigations by the U.S. Government related to its negotiation
and performance of government contracts and its accounting for such contracts. Failure to comply with applicable U.S. Government standards
by a contractor may result in suspension from eligibility for award of any new government contract and a guilty plea or conviction may
result in debarment from eligibility for awards. The government may, in certain cases, terminate existing contracts, recover damages,
and impose other sanctions and penalties. As a result of contract audits, the Company will determine a range of possible outcomes and,
in accordance with ASC 450 &#8220;Contingencies,&#8221; the Company will accrue amounts within a range that appears to be its best estimate
of a possible outcome. Adjustments are made to accruals, if any, periodically based on current information.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">We are party to various litigation matters and
claims arising from time to time in the ordinary course of business. There are no pending litigation matters or claims which we believe
will have a material adverse effect on our business, financial condition, results of operations or cash flows.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company was awarded $<ix:nonFraction contextRef="c2" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:CustomerFunds" scale="6" unitRef="usd" id="ixv-7611">7.4</ix:nonFraction> million in funding
during the second quarter of fiscal year 2023 in support of facility and capital equipment upgrades for testing and qualification for
the United States Navy. The funding is part of the Navy&#8217;s investment to improve and sustain the Surface Combatant Industrial Base.
The work is being conducted on the Company&#8217;s property in Saratoga Springs, NY, and is in the final stages, nearing completion. The
Company expects to be paid within 30 days after the submission of three milestone invoices, but will not be paid for expenses incurred
in excess of the specified milestone payment limits. The Company has recorded any receipts of milestone payments received as a reduction
from the cost of the assets. The Company incurred an initial cash outlay to satisfy income tax obligations arising from the value of the
milestone payments received. The cash outlay arising from federal income tax obligations is expected to be recaptured in future periods.
Until recaptured, estimated tax obligations associated with the receipt of milestone payments are recorded on the balance sheet and included
in deferred tax assets. As of March 31, 2025, net deferred tax assets include a deferred tax asset of $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsLiabilitiesNet" scale="0" unitRef="usd" id="ixv-7612">888,032</ix:nonFraction> associated with milestone
reimbursements received totaling $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsGross" scale="0" unitRef="usd" id="ixv-7613">4,228,722</ix:nonFraction>. Included in property, plant, and equipment at March 31, 2025 was $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd" id="ixv-7614">2,535,297</ix:nonFraction> not yet reimbursed
for facility and capital upgrades under the funding award, compared to $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd" id="ixv-7615">965,392</ix:nonFraction> in spending not yet reimbursed included in property, plant,
and equipment at June 30, 2024. Included in accounts payable at March 31, 2025 was approximately $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrentAndNoncurrent" scale="0" unitRef="usd" id="ixv-7616">25,000</ix:nonFraction> for facility and capital upgrades
eligible to be reimbursed under the funding award compared to $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrentAndNoncurrent" scale="0" unitRef="usd" id="ixv-7617">272,560</ix:nonFraction> included in accounts payable at June 30, 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In June 2024, the Company notified the third-party
administrator of the IBEW Local 1799 Pension Fund of its intention to withdraw permanently from the plan. As required by the Employee
Retirement Income Security Act &#8220;ERISA&#8221;, the Company is subject to a termination withdrawal liability. The recorded termination
withdrawal obligation at March 31, 2025 and June 30, 2024 totaled $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="esp:TerminationWithdrawalObligation" scale="0" unitRef="usd" id="ixv-7618">561,852</ix:nonFraction> and $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:TerminationWithdrawalObligation" scale="0" unitRef="usd" id="ixv-7619">772,157</ix:nonFraction>, respectively, shown within the accounts payable
balance on the Company&#8217;s balance sheets. As the Company was the only remaining contributing employer to the multiemployer pension
plan, its withdrawal constitutes a mass withdrawal termination. Final withdrawal calculations have been completed and are in line with
the established liability as of March 31, 2025.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In December 2024, the Company was awarded $<ix:nonFraction contextRef="c13" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:CustomerFunds" scale="6" unitRef="usd" id="ixv-7620">3.4</ix:nonFraction>
million in funding in support of facility and capital equipment upgrades. The funding is part of the Navy&#8217;s investment to improve
and sustain the Surface Combatant Industrial Base. The grant is expected to be in force through calendar year 2026. Included in property,
plant, and equipment at March 31, 2025 was $<ix:nonFraction contextRef="c91" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd" id="ixv-7621">776,329</ix:nonFraction> not yet reimbursed for facility and capital equipment upgrades under the funding
award. Included in accounts payable at March 31, 2025 was approximately $<ix:nonFraction contextRef="c91" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrentAndNoncurrent" scale="0" unitRef="usd" id="ixv-7622">152,701</ix:nonFraction> for facility and capital upgrades eligible to be reimbursed
under the funding award.</p></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 14 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->12<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="ixv-6386"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 6. Revenue</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company follows ASC 606 &#8220;Revenue from
Contracts with Customers&#8221; to determine the recognition of revenue. This standard requires entities to assess the products or services
promised in contracts with customers at contract inception to determine the appropriate unit at which to record revenues.&#160;Revenue
is recognized when control of the promised products or services is transferred to customers at an amount that reflects the consideration
to which the entity expects to be entitled to in exchange for those products or services.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Significant judgment is required in determining
the satisfaction of performance obligations.&#160;Revenues from our performance obligations are satisfied over time using the output method
which considers the appraisal of results achieved and milestones reached or units delivered based on contractual shipment terms, typically
shipping point.&#160;Revenue is recognized when, or as, the customer takes control of the product or services.&#160;The output method
best depicts the transfer of control to the customer as the output method represents work completed. Control is typically transferred
to the customer at the shipping point, as the Company has a present right to payment, the customer has legal title to the asset, the customer
has the significant risks and rewards of ownership of the asset, and in most instances the customer has accepted the asset.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Total revenue recognized for the three and nine
months ended March 31, 2025 based on units delivered was $<ix:nonFraction contextRef="c92" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7623">9,557,710</ix:nonFraction> and $<ix:nonFraction contextRef="c93" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7624">27,057,894</ix:nonFraction>, respectively, compared to $<ix:nonFraction contextRef="c94" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7625">7,546,422</ix:nonFraction> and $<ix:nonFraction contextRef="c95" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7626">22,189,116</ix:nonFraction>
for the same period in fiscal year 2024. Total revenue recognized for the three and nine months ended March 31, 2025 based on milestones
achieved was $<ix:nonFraction contextRef="c96" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7627">745,009</ix:nonFraction> and $<ix:nonFraction contextRef="c97" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7628">7,296,783</ix:nonFraction>, respectively, compared to $<ix:nonFraction contextRef="c98" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7629">708,231</ix:nonFraction> and $<ix:nonFraction contextRef="c99" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7630">4,936,292</ix:nonFraction> for the same period in fiscal year 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company offers a standard one-year product
warranty. Product warranties offered by the Company are classified as assurance-type warranties, which means the warranty only guarantees
that the good or service functions as promised. Based on this, the provided warranty is not considered to be a distinct performance obligation.&#160;The
impact of variable consideration has been considered but none identified which would be required to be allocated to the transaction price
as of March 31, 2025. Our payment terms are generally 30-60 days.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Contract liabilities were $<ix:nonFraction contextRef="c100" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd" id="ixv-7631">21,018,310</ix:nonFraction> and
$<ix:nonFraction contextRef="c101" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd" id="ixv-7632">9,043,422</ix:nonFraction> as of March 31, 2025 and June 30, 2024, respectively. The increase in contract liabilities is primarily due to the
advance collection of cash on specific contracts, offset in part, by revenue recognized. Of the $<ix:nonFraction contextRef="c102" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" unitRef="usd" id="ixv-7633">9,043,422</ix:nonFraction> that was in contract
liabilities as of June 30, 2024, $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" unitRef="usd" id="ixv-7634">3,490,436</ix:nonFraction> has been recognized in revenue as of the nine months ended March 31, 2025. The Company
used the practical expedient to expense incremental costs incurred to obtain a contract when the contract term is less than <ix:nonNumeric contextRef="c0" format="ixt-sec:durwordsen" name="esp:ContractTerm" id="ixv-7635">one
year</ix:nonNumeric>.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company&#8217;s backlog at March 31, 2025
totaling approximately $<ix:nonFraction contextRef="c103" decimals="-6" format="ixt:num-dot-decimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="6" unitRef="usd" id="ixv-7636">138</ix:nonFraction> million is currently estimated to be recognized in the following fiscal years: <ix:nonFraction contextRef="c103" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearOne" scale="-2" unitRef="pure" id="ixv-7637">7.0</ix:nonFraction>% in 2025; <ix:nonFraction contextRef="c103" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearTwo" scale="-2" unitRef="pure" id="ixv-7638">35.9</ix:nonFraction>% in 2026;
<ix:nonFraction contextRef="c103" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearThree" scale="-2" unitRef="pure" id="ixv-7639">12.3</ix:nonFraction>% in 2027; <ix:nonFraction contextRef="c103" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitions" scale="-2" unitRef="pure" id="ixv-7640">44.8</ix:nonFraction>% thereafter. The timing of supplier deliveries of material, production schedules, the completion of engineering
deliverables, among other factors, could cause these estimates to change.</p></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock-c0_cont_1" escape="true" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="ixv-6403"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 7. Recently Issued Accounting Standards</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Recent Accounting Pronouncements Not Yet Adopted</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In December 2023, FASB issued ASU 2023-09,&#160;&#8220;Income
Taxes&#160;(Topic 740):&#160;Improvements to Income Tax Disclosures,&#8221; to enhance the transparency and decision usefulness of income
tax disclosures. The amendments in ASU 2023-09 provide improvements primarily related to the rate reconciliation and income taxes paid
information included in income tax disclosures. The Company would be required to disclose additional information regarding reconciling
items equal to or greater than five percent of the amount computed by multiplying pretax income (loss) by the applicable statutory tax
rate. Additionally, the Company would be required to disclose income taxes paid (net of refunds received) disaggregated by individual jurisdictions,
when the taxes paid in an individual jurisdiction is equal to or greater than five percent of the Company&#8217;s total income taxes paid
(net of refunds received). The amendments in ASU 2023-09 are effective for the annual period beginning July
1, 2025. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. The
Company will evaluate the impact of ASU 2023-09 on its financial statements.</p></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 15 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->13<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><ix:continuation id="_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In November 2023, the FASB issued ASU 2023-07,&#160;&#8220;Segment
Reporting (Topic 280): Improvements to Reportable Segment Disclosures,&#8221; which provides updates to qualitative and quantitative reportable
segment disclosure requirements, including enhanced disclosures about significant segment expenses and increased interim disclosure requirements,
among others. The amendments in ASU 2023-07 are effective for fiscal years beginning after December 15, 2023, and interim periods within
fiscal years beginning after December 15, 2024. Early adoption is permitted, and the amendments should be applied retrospectively. The
adoption of ASU 2023-07 is not expected to have a significant impact on the financial statements. The Company is currently evaluating
the impact of this new guidance on its financial statements.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In November 2024, the FASB issued ASU 2024-03,
&#8220;Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures (Subtopic 220-40)&#8221; with the
goal of improving disclosures about a public business entity&#8217;s expenses and address requests from investors for more detailed information
about the types of expenses in captions that are commonly presented on the face of the financial statements such as cost of sales, SG&amp;A,
and research and development. These amendments are effective for annual reporting periods beginning after December 15, 2026 and interim
reporting periods beginning after December 15, 2027. Early adoption is permitted and should be applied either prospectively to financial
statements issued for reporting periods after the effect date of the updates or retrospectively to any or all prior periods presented
in the financial statements. The Company will evaluate the impact of this guidance on its financial statements.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Recent Accounting Pronouncements Adopted</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">None</p></ix:continuation><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="esp:EmployeeStockOwnershipPlanTextBlock" id="ixv-6433"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in">Note 8. Employee
Stock Ownership Plan</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company sponsors a leveraged employee
stock ownership plan (the "ESOP") that covers all nonunion employees who work <ix:nonFraction contextRef="c104" decimals="0" format="ixt:num-dot-decimal" name="esp:EmployeeStockOwnershipPlanHoursWorked" scale="0" unitRef="pure" id="ixv-7641">1,000</ix:nonFraction> or more hours per year and are
employed on June 30. The Company makes annual contributions to the ESOP equal to the ESOP's debt service less dividends on
unallocated shares received by the ESOP. All dividends on unallocated shares received by the ESOP are used to pay debt service.
Dividends on allocated ESOP shares are recorded as a reduction of retained earnings. As the debt is repaid, shares are released and
allocated to active employees, based on the proportion of debt service paid in the year. The Company accounts for its ESOP in
accordance with FASB ASC 718-40 &#8220;Share-based Payments.&#8221; Accordingly, the shares purchased by the ESOP are reported as Unearned ESOP
shares in the balance sheet and the statement of changes in stockholders&#8217; equity. As shares are released or
committed-to-be-released, the Company reports compensation expense equal to the current average market price of the shares, and the
shares become outstanding for earnings-per-share (EPS) computations. ESOP compensation expense was $<ix:nonFraction contextRef="c105" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7642">149,036</ix:nonFraction> and $<ix:nonFraction contextRef="c106" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7643">128,300</ix:nonFraction> for the
three-month periods ended March 31, 2025 and 2024, respectively. ESOP compensation expense was $<ix:nonFraction contextRef="c107" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7644">435,298</ix:nonFraction> and $<ix:nonFraction contextRef="c108" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7645">311,664</ix:nonFraction> for the
nine-month periods ended March 31, 2025 and 2024, respectively.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">&#160;</p>

<ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" id="ixv-6438"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">The ESOP shares as of March
31, 2025 and 2024 were as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; text-indent: 0in">Allocated shares</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" scale="0" unitRef="shares" id="ixv-7646">383,812</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction contextRef="c54" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" scale="0" unitRef="shares" id="ixv-7647">428,974</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Committed-to-be-released shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" scale="0" unitRef="shares" id="ixv-7648">16,253</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c54" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" scale="0" unitRef="shares" id="ixv-7649">16,619</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Unreleased shares</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" scale="0" unitRef="shares" id="ixv-7650">195,234</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c54" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" scale="0" unitRef="shares" id="ixv-7651">217,026</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt">Total shares held by the ESOP</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP" scale="0" unitRef="shares" id="ixv-7652">595,299</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c54" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP" scale="0" unitRef="shares" id="ixv-7653">662,619</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Fair value of unreleased shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" scale="0" unitRef="usd" id="ixv-7654">5,296,698</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c54" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" scale="0" unitRef="usd" id="ixv-7655">5,479,907</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:nonNumeric>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-indent: -1in"><span style="text-underline-style: double">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company may at times be required to repurchase
shares at the ESOP participants&#8217; request at the shares&#8217; fair market value. During the three and nine months ended March 31,
2025 and 2024, the Company did not repurchase shares previously held by the ESOP.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The ESOP allows for eligible participants to
take whole share distributions from the Plan on specific dates in accordance with the provision of the Plan. Share distributions from
the ESOP during the nine months ended March 31, 2025 and 2024 totaled <ix:nonFraction contextRef="c107" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan" scale="0" unitRef="shares" id="ixv-7656">67,320</ix:nonFraction> and <ix:nonFraction contextRef="c108" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan" scale="0" unitRef="shares" id="ixv-7657">55,985</ix:nonFraction> shares, respectively.</p></ix:nonNumeric><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>


</div><!-- Field: Page; Sequence: 16 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->14<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><div><a id="a_007"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Item 2. Management's Discussion and Analysis of
Financial Condition and Results of Operations</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Overview</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Espey Mfg. &amp; Electronics Corp. (&#8220;Espey&#8221;)
is a power electronics design and original equipment manufacturing (OEM) company with a long history of developing and delivering reliable
products for use in military and severe environment applications. Design, manufacturing, and testing is performed in our in-service 150,000+
square foot facility located at 233 Ballston Ave, Saratoga Springs, New York. Espey is classified as a &#8220;smaller reporting company&#8221;
for purposes of the reporting requirements under the Securities Exchange Act of 1934, as amended. Espey&#8217;s common stock is publicly-traded
on the NYSE American under the symbol &#8220;ESP.&#8221;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Espey began operations after incorporation in
New York in 1928. We strive to remain competitive as a leader in high power energy conversion and transformer solutions through the design
and manufacture of new and improved products by using advanced and &#8220;cutting edge&#8221; electronics technologies.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Espey is an ISO 9001:2015 and AS9100:2016 certified
manufacturer of power conversion, advanced magnetics and build to print specifications provided by the customer &#8220;build to print&#8221;
products for the rugged industrial and military marketplace. Our primary products are power supplies, power converters, filters, power
transformers, magnetic components, power distribution equipment, UPS systems, and antennas. The applications of these products include
AC and DC locomotives, shipboard power, shipboard radar, airborne power, ground-based radar, and ground mobile power.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Espey services include design and development
to specification, build to specifications provided by the customer &#8220;build to print&#8221;, design services, design studies, environmental
testing services, metal fabrication, painting services, and development of automatic testing equipment. Espey is vertically integrated,
meaning that the Company produces individual components (including inductors), populates printed circuit boards, fabricates metalwork,
paints, wires, qualifies, and fully tests items, mechanically, electrically and environmentally, in house. Portions of the manufacturing
and testing process are subcontracted to vendors from time to time.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company markets its products primarily through
its own direct sales organization and through outside sales representatives. Business is solicited from large industrial manufacturers
and defense companies, the government of the United States, foreign governments and major foreign electronic equipment companies. Espey
is also on the eligible list of contractors with the United States Department of Defense. We pursue opportunities for prime contracts
directly with the Department of Defense and are generally automatically solicited by Department of Defense procurement agencies for their
needs falling within the major classes of products produced by the Company. Espey contracts with the Federal Government under cage code
20950 as Espey Mfg. &amp; Electronics Corp.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">There is competition in all classes of products
manufactured by the Company, ranging from divisions of the largest electronic companies, to many small companies. The Company's sales
do not represent a significant share of the industry's market for any class of its products. The principal methods of competition for
electronic products of both a military and industrial nature include, among other factors, price, product performance, the experience
of the particular company and history of its dealings in such products.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Our business is not seasonal. However, the concentration
of our business in the rail industry, and in equipment for military applications and industrial applications, and our customer concentrations
expose us to on-going associated risks. These risks include, without limitation, fluctuating requirements for power supplies in the rail
industry, dependence on appropriations from the United States Government and the governments of foreign nations, program allocations,
the potential of governmental termination of orders for convenience, and the general strength of the industry sectors in which our customers
transact business.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Future procurement needs supporting the military
and the rail industry continue to drive competition. Many of our competitors have invested, and continue to invest, aggressively in upfront
product design costs and accept lower profit margins as a strategic means of maintaining existing business and enhancing market share.
This continues to put pressure on the pricing of our current products and has lowered our profit margins on some of our new business.
In order to compete effectively for new business, in some cases we have invested in upfront design costs, thereby reducing initial profitability
as a means of procuring new long-term programs. As part of our strategy, we adjust our pricing in order to achieve a balance which enables
us both to retain repeat programs while being more competitive in bidding on new programs.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 17 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->15<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Our sales strategy includes identifying and obtaining
multiple new engineering design and development contracts in any given fiscal year to ensure optimal utilization of our engineering personnel
in addition to securing follow-on production awards for product previously designed in-house, as well as, new or follow-on build to print
opportunities. The Company targets those programs and opportunities which will generate future longer-term production tails in ensuing
years. From time to time, we accept work associated with engineering design studies. While unlikely to result in near-term follow-on orders,
this positions us competitively for future awards and expands our engineering team&#8217;s skillset.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The total backlog at March 31, 2025 was $138 million,
which included approximately $97.7 million from three significant customers, compared to $84.2 million at March 31, 2024, which included
approximately $54.5 million from five significant customers. The Company&#8217;s total backlog represents the estimated remaining sales
value of work to be performed under firm contracts. It is not uncommon to receive orders which include delivery schedules extending beyond
a year from the contract purchase date. Due to this, a customer&#8217;s future reorder point may vary. The backlog at March 31, 2025 is
fully funded, except for approximately $33.3 million, representing six firm follow-on multi-year orders from a single customer. While
there is no guarantee that future budgets and appropriations will provide funding for individual programs, management has included in
the unfunded backlog only those programs that it believes are likely to receive funding based on program status and discussions with customers.
Contracts are subject to modification, change or cancellation, and the Company accounts for these changes as they are probable and estimable.
The Company evaluates the impact of any scope modifications and will adjust reserves to the extent information is known or estimable.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Management expects revenues and earnings per share
to be higher in fiscal year 2025 than fiscal year 2024. This expectation is driven primarily by orders already in our backlog that will
be shipped in the final quarter of fiscal year 2025 and the change in product mix shipped during fiscal year 2025 as compared to fiscal
year 2024.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">From time to time, we encounter part obsolescence
which requires us to identify an alternate part suitable for use. We continue to work with our customers on strategies to mitigate any
adverse impact upon our ability to service their requirements. Factors which may arise after the placement of the customer&#8217;s order
may cause us to miss projected delivery dates. Inflationary costs are expected to continue, but are not expected to have a significant
impact on operating income in fiscal year 2025. Tariffs on steel and aluminum imports from various countries continue to be a concern.
Although we are not currently experiencing any significant financial or raw material sourcing issues resulting from the product tariffs,
the Company is continuing to monitor the changes in foreign trade policies and the potential impact they could have on our business moving
forward.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The labor workforce remains stable. Management
continues to closely monitor workforce labor requirements to support our sales backlog and planned delivery schedules. Longer time-to-hire
challenges remain for certain positions due to specific skillsets required for those positions. Unemployment rates in the local geographic
region trend lower than the national average which has created a competitive recruiting environment. Where possible, the Company continues
to offer on-the-job training and when necessary, continues to recruit personnel outside the local region. Combined with supply chain constraints,
unforeseen labor disruptions could delay shipments and result in missing our backlog fulfillment projections and recognizing lower than
anticipated operating income.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Successful conversion of engineering program backlog
into sales is largely dependent on the execution and completion of our engineering design efforts. It is not uncommon to experience technical
or scheduling delays which arise from time to time as a result of, among other reasons, design complexity, the availability of personnel
with the requisite expertise, and the requirements to obtain customer approval at various milestones.&#160;Cost overruns which may arise
from technical and scheduling delays and increased raw material costs could negatively impact the timing of the conversion of backlog
into sales, or the profitability of such sales. Engineering programs in both the funded and unfunded portions of the current backlog aggregate
$12.3 million.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">It is presently anticipated that a minimum of
$9.6 million of orders comprising the March 31, 2025 backlog will be filled during the fiscal year ending June 30, 2025 subject, however,
to the impact of the factors identified above. The minimum of $9.6 million does not include any shipments which may be made against orders
subsequently received during the fiscal year ending June 30, 2025.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><!-- Field: Page; Sequence: 18 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->16<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of March 31, 2025, new orders received year
to date have exceeded total new orders received in fiscal 2024. New orders received in the first nine months of fiscal year 2025 were $75.1
million as compared to approximately $27.8 million new orders received in the first nine months of fiscal year 2024. Included in new orders
received during the current fiscal year are two awards, one for $29.5 million and the other $19.8 million, when fully funded, to provide
electric power distribution panels for the U.S. Navy&#8217;s Columbia class submarines through calendar year 2032. In addition to the
backlog and the new orders already booked in fiscal year 2025, the Company currently has outstanding opportunities representing approximately
$151 million in the aggregate as of May 1, 2025 for both repeat and new programs. Outstanding opportunities encompass various new and
previously manufactured power supplies, transformers, and subassemblies.&#160;We consider the value of those opportunities we believe
are likely to be awarded based on factors which include: quotation status, communicated award dates, historical ordering, public information
on defense programs and program funding, discussion with customers, and our cost competitiveness.&#160;However, there can be no assurance
that the Company will acquire any of the outstanding opportunities described above, many of which are subject to allocations of the United
States defense spending and factors affecting the defense industry. Also, many solicitations we receive for the procurement of goods and
services are associated with competitive bidding processes.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">A significant portion of the Company&#8217;s
business is the production of military and industrial electronic equipment for use by the U.S. and foreign governments and certain
industrial customers. Net sales to five significant customers represented 82% of the Company&#8217;s total sales for the three-month
period ended March 31, 2025. Net sales to four significant customers represented 79% of the Company&#8217;s total sales for the
three-month period ended March 31, 2024. Net sales to six significant customers represented approximately 75% of the Company&#8217;s
total sales for the nine-month period ended March 31, 2025. Net sales to four significant customers represented 74% of the
Company&#8217;s total sales for the nine-month period ended March 31, 2024. A loss of one of these customers or programs related to
these customers, or customer requested deferrals of product delivery could significantly impact the Company.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Historically, a small number of customers have
accounted for a large percentage of the Company&#8217;s total sales in any given fiscal year. Management continues to pursue opportunities
with current and new customers with an overall objective of lowering the concentration of sales, mitigating excessive reliance upon a
single major product of a particular program and minimizing the impact of the loss of a single significant customer. Given the nature
of our business, we believe our existing sales order backlog is fairly diversified in terms of customers and the category of products
on order.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Critical Accounting Policies and Estimates</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Management believes our most critical accounting
policies include revenue recognition and cost estimation on our contracts.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Revenue</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The majority of our sales are generated from military
contracts from defense companies, the United States Department of Defense, other agencies of the government of the United States and foreign
governments, for the design and development and/or manufacture of products. Sales are also generated from industrial manufacturers for
similar services. We provide our products and design and development services under fixed-price contracts. Under fixed-price contracts
we agree to perform the specified work for a pre-determined price. To the extent our actual costs vary from the estimates upon which the
price was negotiated, we will generate more or less profit or could incur a loss.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 22.5pt">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">We account for a contract with a customer after
it has been approved by all parties to the arrangement, the rights of the parties are identified, payment terms are identified, the contract
has commercial substance, and collection of substantially all of the amount to which the entity will be entitled in exchange for the goods
or services that will be transferred to the customer is probable. We assess each contract at its inception to determine whether it should
be combined with other contracts. When making this determination, we consider factors such as whether two or more contracts were negotiated
and executed at or near the same time, or were negotiated with an overall profit objective.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 22.5pt">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">We evaluate the products or services promised
in each contract at inception to determine whether the contract should be accounted for as having one or more performance obligations.
Significant judgment is required in determining performance obligations. We determine the transaction price for each contract based on
the consideration we expect to receive for the products or services being provided under the contract. The transaction price for each
performance obligation is based on the estimated standalone selling price of the product or service underlying each performance obligation.
Transaction prices on our contracts subject to the Federal Acquisition Regulations (FAR) are typically based on estimated costs plus a
reasonable profit margin.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 19 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->17<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">We recognize revenue using the output method based
on the appraisal of results achieved and milestones reached or units delivered based on contractual shipment terms, typically shipping
point.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Inventory</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Raw materials are valued at the lower of cost
(average cost) or net realizable value. Balances for slow-moving and obsolete inventory are reviewed on a regular basis by analyzing estimated
demand, inventory on hand, sales levels, market conditions, and other information. Inventory balances are reduced based on this analysis.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Inventoried work relating to contracts in process
and work-in-process is valued at actual production cost, including factory overhead incurred to date. Contract costs include material,
subcontract costs, labor, and an allocation of overhead costs. Work-in-process represents spare units and parts and other inventory items
acquired or produced to service units previously sold or to meet anticipated future orders. Provision for losses on contracts is made
when the existence of such losses becomes probable and estimable.&#160;The provision for losses on contracts is included in other accrued
expenses on the Company&#8217;s balance sheet.&#160;The costs attributed to units delivered under contracts are based on the estimated
average cost of all units expected to be produced.&#160;Certain contracts are expected to extend beyond twelve months.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The estimation of total cost at completion of
a contract is subject to numerous variables involving contract costs and estimates as to the length of time to complete the contract.&#160;Given
the significance of the estimation processes and judgments described above, it is possible that materially different amounts of expected
sales and contract costs could be recorded if different assumptions were used, based on changes in circumstances, in the estimation process.&#160;When
a change in expected sales value or estimated cost is determined, the change is reflected in current period earnings.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Contract Liabilities</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Contract liabilities include advance payments
and billings in excess of revenue recognized.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Accounts Receivable and Allowance for Credit Losses</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company extends credit to its customers in
the normal course of business and collateral is generally not required for trade receivables.&#160;Exposure to credit risk is controlled
through the use of credit approvals, credit limits, and monitoring procedures.&#160;Accounts receivable are reported net of an allowance
for credit losses.&#160;The Company estimates the allowance based on its analysis of historical experience, current economic market conditions,
performance of specific account reviews, and other factored considerations to include, but not limited to, contracts covered by government
funding and the overall health of the industry. Interest is not charged on past due balances. Based on these factors, there was an allowance
for credit losses of $3,000 at March 31, 2025 and June 30, 2024.&#160;Changes to the allowance for credit losses are charged to expense
and reduced by charge-offs, net of recoveries. The opening accounts receivable balance, net of allowance for credit losses of $3,000,
at July 1, 2023 and July 1, 2024 were $5,755,282 and $6,635,490, respectively.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Results of Operations</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Net sales for the three months ended March 31,
2025 and 2024 were $10,302,719 and $8,254,653, respectively, a 24.8% increase. Net sales for the nine months ended March 31, 2025 and
2024 were $34,354,677 and $27,125,408, respectively, a 26.7% increase. In general, sales fluctuations may occur during comparable fiscal
periods as the direct result of sales backlog levels, product mix, and specific contractual terms of those firm orders placed including
contract value, scope of work, and contract delivery schedules.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">For the three months ended March 31, 2025, the
increase in sales when compared to the same period last year is primarily due to more deliveries against an overall higher sales backlog
and the product mix comprising those shipments. The increase in sales in the current year was mainly related to our power supply and
build to print programs. During the current quarter, sales increased on deliveries for some key build to print and power supply contracts.
These increases were partially offset by the completion of a power supply program which had sales in the prior comparable period and a
decrease in sales relating to two main magnetics programs. These decreases are attributable to the timing of shipments on certain programs.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">For the nine months ended March 31, 2025, the
increase in sales when compared to the same period last year is primarily related to our power supply and build to print programs. These
increases were partially offset by a decrease in sales for two main magnetics programs also attributable to the timing of shipments on
certain programs.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 20 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->18<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Gross profits for the three months ended March
31, 2025 and 2024 were $2,948,384 and $2,064,191, respectively. Gross profit as a percentage of sales was approximately 28.6% and 25.0%,
for the same periods, respectively. Gross profits for the nine months ended March 31, 2025 and 2024 were $8,912,978 and $7,452,143, respectively.
Gross profit as a percentage of sales was approximately 25.9% and 27.5% <span>for the same periods, respectively.</span></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Gross profits as a percentage increased for
the three months ended March 31, 2025 when compared to the same period last year and decreased for the nine months ended March 31,
2025 when compared to the same period last year. The increase in the gross margin percentage for the three months ended March 31,
2025 is mainly attributable to product mix, increased shipments on various power supply programs with higher than average gross
margins, and increased margins on a key build to print program when compared to the same period last year. The gross margin percentage
decreased for the nine months ended March 31, 2025 when compared to the same period last year due to the completion of two build to
print contracts in the prior comparable period in which there were less sales in the nine months ended March 31, 2025. Further, there
was increased spending and decreased margins for two main magnetics programs which management is confident will improve as the
contracts progress.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The primary factors in determining the change
in gross profit and net income are overall sales levels and product mix. The gross profits on mature products and build to print contracts
are typically higher as compared to products which are still in the engineering development stage or in early stages of production. In
the case of the latter, the Company can incur what it refers to as &#8220;loss contracts,&#8221; primarily on engineering design contracts
in which the Company invests with the objective of developing future product sales. In any given accounting period the mix of product
shipments between higher margin programs,  less mature programs, and expenditures associated with loss contracts, has a significant
impact on gross profit and net income.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Selling, general and administrative expenses were
$1,197,262 for the three months ended March 31, 2025, an increase of $226,042, compared to the three months ended March 31, 2024. Selling,
general and administrative expenses were $3,418,206 for the nine months ended March 31, 2025, an increase of $373,615 compared to the
nine months ended March 31, 2024. The increase in spending for the three months ended March 31, 2025 as compared to the same period in
2024 relates mainly to the increase in employee compensation costs, outside selling costs related to non-employee sales representatives,
an increase in employee recruitment fees, and increases in dues, subscriptions and training costs. The increase in spending for the nine
months ended March 31, 2025 as compared to the same period in 2024 relates mainly to the increase in employee compensation costs, outside
selling costs related to non-employee sales representatives, an increase in outbound freight costs related to higher sales, and an increase
in employee recruitment fees.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Other income for the three months ended March
31, 2025 and 2024 was $336,306 and $184,821, respectively. Other income for the nine months ended March 31, 2025 and 2024 was $883,139
and $513,158, respectively. The increase for the three and nine months ended March 31, 2025 is primarily due to the increase in interest
income resulting from an increase in cash held in money markets and investment securities. Interest income is a function of the level
of investments and investment strategies that generally tend to be conservative. &#160;&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company&#8217;s effective tax rate for
the three and nine months ended March 31, 2025 was approximately 18.3%, compared to 19.2% and 20.3% for the three and nine months
ended March 31, 2024. The effective tax rate in fiscal 2025 and fiscal 2024 is less than the statutory tax rate mainly due to the
benefit received from ESOP dividends paid on allocated shares as well as the benefit from foreign derived intangible income, offset
in part, by the permanent difference for incentive stock option expense recorded for book purposes which is not deductible for tax
purposes. The effective tax rate for the three and nine months ended March 31, 2025 was lower than the prior year primarily
from a greater benefit derived from the ESOP dividends paid on allocated shares and the benefit derived from the exercise of
incentive stock options in the current period when compared to  the same prior year period.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Net income for the three months ended March
31, 2025 was $1,704,487 or $0.66 and $0.63 per share, basic and diluted, compared to net income of $1,031,930 or $0.41 and $0.40 per
share, basic and diluted, for the three months ended March 31, 2024. Net income for the nine months ended March 31, 2025 was
$5,211,303 or $2.03 and $1.95 per share, basic and diluted, compared to $3,921,844 or $1.58 and $1.56 per share, basic and diluted,
for the nine months ended March 31, 2024. The increase in net income in the three months ended March 31, 2025 when compared to the
same period last year resulted primarily from the increase in gross profits and interest income which is slightly offset by an
increase in selling, general, and administrative expenses and an increase in the provision for income taxes. The increase in net
income in the nine months ended March 31, 2025 when compared to the same period last year resulted primarily from the increase in
gross profit and the increase in interest income, offset in part, by an increase in selling, general, and administrative expenses
and an increase in the provision for income taxes, all discussed above.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 21 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->19<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Liquidity and Capital Resources</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company's working capital is an appropriate
indicator of the liquidity of its business. During the past two fiscal years, the Company has funded all of its operations with cash
flows resulting from operating activities and when necessary, from its existing cash and investments. The Company did not borrow any
funds during the last two fiscal years. Management has a $3,000,000 line of credit available to help fund further growth or working capital
needs but does not anticipate the need for any borrowed funds in the foreseeable future. Contingent liabilities on outstanding standby
letters of credit agreements aggregated to zero at March 31, 2025 and 2024. The existing line of credit was renewed in March 2025.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company's working capital as of March 31,
2025 and 2024 was approximately $40.8 million and approximately $36.6 million, respectively. The Company may at times be required to repurchase
shares at the ESOP participants&#8217; request at fair market value. During the three and nine months ended March 31, 2025 and 2024, the
Company did not repurchase any shares held by the ESOP. Under an existing authorization from the Company's Board of Directors, as of March
31, 2025, management is authorized to purchase an additional $783,460 of Company stock.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The table below presents the summary of cash flow
information for the fiscal years indicated:</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: right">Nine Months Ended March 31,</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; text-align: justify">Net cash provided by operating activities</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">18,219,771</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">7,350,662</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: justify">Net cash used in investing activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(8,265,308</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,869,358</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">Net cash used in financing activities </td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(446,971</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(673,795</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  </table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Net cash provided by operating activities fluctuates
between periods primarily as a result of differences in sales and net income, provision for income taxes, the timing of the collection
of accounts receivable, purchase of inventory, and payment of accounts payable. The increase in cash provided by operating activities compared to the prior year primarily relates to an increase in contract liabilities
for cash advances received from customers and an increase in prepaid expenses and other current assets offset in part by a decrease in
inventories and decrease in accounts payable. Net cash used
in investing activities increased in the nine months ended March 31, 2025 as compared to the same period in 2024 due to higher investment
securities offset in part by the increased proceeds from the maturity of investment securities when compared to the same period last year.
Cash used in financing activities for the nine months ended March 31, 2025 slightly increased primarily to dividend payments on common
stock, offset in part, by proceeds from the exercise of stock options. The Company currently believes that the cash flow generated from
operations and when necessary, from cash and cash equivalents will be sufficient to meet its long-term funding requirements for the foreseeable
future.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 6.15pt 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 5.85pt 0pt 0; text-align: justify">During the nine months ended
March 31, 2025 and 2024, the Company expended $2,509,088 and $4,501,997, respectively, for plant improvements and new equipment, of
which $2,346,233 and $4,294,632, respectively, was either reimbursed or eligible to be reimbursed under the not to exceed $7.4
million and $3.4 million awards received by the Company. The awards received by the Company are in support of facility and capital
equipment upgrades for testing and qualification for the United States Navy. These funding awards  are part of the Navy&#8217;s
investment to improve and sustain the Surface Combatant Industrial Base. The Company has budgeted approximately $500,000 for new
equipment and plant improvements in fiscal year 2025, not reimbursable under the funding awards received. A majority of these
expenditures will be made to stay competitive in the marketplace and to meet the needs of current contracts.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 5.85pt 0pt 0; text-align: justify">&#160;</p><div>

</div><!-- Field: Page; Sequence: 22 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->20<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 5.85pt 0pt 0; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">CAUTIONARY STATEMENT FOR PURPOSES OF
THE "SAFE HARBOR" PROVISIONS OF THE PRIVATE</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">SECURITIES LITIGATION REFORM ACT OF 1995</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">This report contains "forward-looking statements"
within the meaning of the Private Securities Litigation Reform Act of 1995. The terms "believe," "anticipate," "intend,"
"goal," "expect," and similar expressions may identify forward-looking statements. These forward-looking statements
represent the Company's current expectations or beliefs concerning future events. The matters covered by these statements are subject
to certain risks and uncertainties that could cause actual results to differ materially from those set forth in the forward-looking statements,
including the Company's dependence on timely development, introduction and customer acceptance of new products, the impact of competition
and price erosion, supply and manufacturing constraints, potential new orders from customers, the impact of cyber or other security threats
or other disruptions to our business, the impact of inflationary pressures on the United States economy and our operations and other risks
and uncertainties. The foregoing list should not be construed as exhaustive, and the Company disclaims any obligation subsequently to
revise any forward-looking statements to reflect events or circumstances after the date of such statements or to reflect the occurrence
of anticipated or unanticipated events. The Company wishes to caution readers not to place undue reliance on any such forward-looking
statements, which speak only as of the date made.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><div><a id="a_008"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Item 3. Quantitative and Qualitative Disclosures
About Market Risk</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company is a smaller reporting company as
defined under Securities and Exchange Commission Rule 12b-2. Pursuant to the exemption available to smaller reporting company issuers
under Item 305 of Regulation S-K, quantitative and qualitative disclosures about market risk, the Company is not required to provide the
information for this item.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p><div>

</div><div><a id="a_009"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Item 4. Controls and Procedures</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">(a) The Company's management, with the
participation of the Company's Chief Executive Officer and Principal Financial Officer, carried out an evaluation of the
effectiveness of our disclosure controls and procedures (as defined in Rule 13a-15(e) and 15d-15(e) under the Securities Exchange
Act of 1934) as of the end of the period covered by this Quarterly Report on Form 10-Q. Based on such evaluation, our Chief
Executive Officer and Principal Financial Officer have concluded that our disclosure controls and procedures were effective as of
the end of the period covered by this report.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">(b) There have been no changes in our internal
controls over financial reporting during the period covered by this report that have materially affected, or are reasonably likely to
materially affect, our internal controls over financial reporting.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p><div>


</div><!-- Field: Page; Sequence: 23 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->21<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><div><a id="a_010"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">PART II: Other Information and Signatures</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0">&#160;</p><div>

</div><div><a id="a_011"></a></div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0"/><td style="width: 0.75in">Item 1.</td><td style="padding-right: 0.5in">Legal Proceedings</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Currently, there are no matters pending against
the Company which could reasonably be expected to have a material adverse effect on our business, financial condition, results of operations
or cash flows.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p><div>

</div><div><a id="a_012"></a></div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0"/><td style="width: 0.75in">Item 2.</td><td>Unregistered Sales of Equity Securities and Use of Proceeds</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0.75in"/><td style="width: 0.25in">(a)</td><td style="text-align: justify">Securities Sold</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0.75in"/><td style="width: 0.25in">(c)</td><td>Securities Repurchased</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-align: justify">As of March 31, 2025 the Company can repurchase
up to $783,460 of its common stock&#160;pursuant to an existing authorization by the Board of Directors. During the quarter ended March
31, 2025 no shares were repurchased.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-align: justify">&#160;</p><div>

</div><div><a id="a_013"></a></div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0"/><td style="width: 0.75in">Item 3.</td><td>Defaults Upon Senior Securities</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.75in">None</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.75in">&#160;</p><div>

</div><div><a id="a_014"></a></div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0"/><td style="width: 0.75in">Item 4.</td><td>Mine Safety Disclosures</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.75in">Not applicable</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.75in">&#160;</p><div>

</div><div><a id="a_015"></a></div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0"/><td style="width: 0.75in">Item 5.</td><td>Other Information</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.75in"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:Rule10b51ArrTrmntdFlag" id="ixv-7658"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:Rule10b51ArrAdoptedFlag" id="ixv-7659"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:NonRule10b51ArrTrmntdFlag" id="ixv-7660"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:NonRule10b51ArrAdoptedFlag" id="ixv-7661">None</ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.75in">&#160;</p><div>

</div><div><a id="a_016"></a></div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 0"/><td style="width: 0.75in">Item 6.</td><td>Exhibits</td></tr></table><div>

</div><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse; border-spacing: 0px;">
  <tr style="vertical-align: top">
    <td style="width: 0.75in; text-align: justify">&#160;</td>
    <td style="width: 0.75in; text-align: justify">31.1</td>
    <td style="text-align: justify"><a href="ex31-1.htm">Certification of the Chief Executive Officer pursuant to Rules 13a-14(a) and 15d-14(a) under the Securities Exchange Act of 1934, as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</a></td></tr>
  <tr style="vertical-align: top">
    <td style="text-align: justify">&#160;</td>
    <td style="text-align: justify">&#160;</td>
    <td style="text-align: justify">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="text-align: justify">&#160;</td>
    <td style="text-align: justify">31.2 </td>
    <td style="text-align: justify"><a href="ex31-2.htm">Certification of the Principal Financial Officer pursuant to Rules 13a-14(a) and 15d-14(a) under the Securities Exchange Act of 1934, as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</a></td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>32.1 </td>
    <td><a href="ex32-1.htm">Certification of the Chief Executive Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</a></td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td><span style="font-family: Times New Roman, Times, Serif">32.2 </span></td>
    <td><span style="font-family: Times New Roman, Times, Serif"><a href="ex32-2.htm">Certification of the Principal Financial Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</a></span></td></tr>
  </table><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1.5in; text-indent: -0.75in">&#160;</p><div>


</div><!-- Field: Page; Sequence: 24 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->22<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1.5in; text-indent: -0.75in">&#160;</p><div>

</div><div><a id="a_017"></a></div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">S I G N A T U R E S</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Pursuant to the requirements of the Securities Exchange Act of 1934,
the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse; border-spacing: 0px;">
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td style="width: 3in">ESPEY MFG. &amp; ELECTRONICS CORP.</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-decoration: none">/s/ David O&#8217;Neil</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>David O&#8217;Neil</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>President and Chief Executive Officer</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-decoration: none">/s/ Kaitlyn O&#8217;Neil</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Kaitlyn O&#8217;Neil</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Principal Financial Officer</td></tr>
  </table><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Date: May 12, 2025</p><div>

</div><p style="margin: 0">&#160;</p><div>

</div><!-- Field: Page; Sequence: 25 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->23<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="margin: 0"></p><div>

</div><div style="display: none"><ix:header>
<ix:hidden>
<ix:nonFraction contextRef="c3" id="hidden-fact-0" name="us-gaap:AccruedEmployeeBenefitsCurrent" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c2" id="hidden-fact-1" name="us-gaap:CommitmentsAndContingencies" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c3" id="hidden-fact-2" name="us-gaap:CommitmentsAndContingencies" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c2" decimals="2" id="hidden-fact-3" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="usdPershares">0.33</ix:nonFraction>
<ix:nonFraction contextRef="c3" decimals="2" id="hidden-fact-4" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="usdPershares">0.33</ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-5" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-6" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-7" name="esp:ProceedsFromGrantAward" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-8" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c67" id="hidden-fact-9" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c67" id="hidden-fact-10" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c69" id="hidden-fact-11" name="us-gaap:TradingSecuritiesDebtAmortizedCost" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c69" id="hidden-fact-12" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c69" id="hidden-fact-13" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c69" id="hidden-fact-14" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c70" id="hidden-fact-15" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c70" id="hidden-fact-16" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c72" id="hidden-fact-17" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c87" id="hidden-fact-18" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonNumeric contextRef="c89" id="hidden-fact-19" name="esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xsi:nil="true"></ix:nonNumeric>
<ix:nonNumeric contextRef="c89" id="hidden-fact-20" name="esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xsi:nil="true"></ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:EntityCentralIndexKey" id="ixv-7685">0000033533</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:AmendmentFlag" id="ixv-7686">false</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:DocumentFiscalPeriodFocus" id="ixv-7687">Q3</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:CurrentFiscalYearEndDate" id="ixv-7688">--06-30</ix:nonNumeric>
</ix:hidden>
<ix:references><link:schemaRef xlink:href="esp-20250331.xsd" xlink:type="simple"/></ix:references>
<ix:resources xmlns="http://www.xbrl.org/2003/instance"><xbrli:context xmlns="" id="c0">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c1">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-05-08</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c2">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c3">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c4">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c5">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c6">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c7">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c8">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c9">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c10">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c11">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c12">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c13">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c14">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c15">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c16">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c17">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c18">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c19">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c20">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c21">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c22">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c23">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c24">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c25">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c26">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c27">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c28">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c29">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c30">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c31">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c32">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c33">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c34">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c35">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c36">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c37">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c38">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c39">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c40">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c41">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c42">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c43">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c44">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c45">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c46">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c47">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c48">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c49">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c50">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c51">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c52">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c53">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c54">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c55">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c56">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XncOfhwynpbLSlg/EHV+wnkBCjYz99GxoVyTdmm5esYO6v4WZiwUdXqbHm3T9lIqBI6ihpM1ztbmPpUOBu6RJYQRhwVY1ieH1g7XlcmlNCUIFKPfhGyXVPC1TQLe/FNpUnR3X3JcQc0H2GSdR7a94SodKdXPC7ByWGFtuoG9Ijxdg==] CSR-->
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c57">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c58">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c59">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c60">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c61">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c62">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c63">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c64">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c65">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c66">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c67">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c68">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c69">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c70">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c71">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c72">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c73">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c74">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c75">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c76">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c77">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:IncentiveStockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c78">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c79">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">esp:NonEmployeeDirectorsMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c80">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">esp:NonEmployeeDirectorsMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c81">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">esp:IndividualEmployeeMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c82">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c83">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c84">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c85">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c86">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:RestrictedStockPlanMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSevenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c87">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-07-01</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c88">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2024-07-01</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c89">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c90">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c91">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">esp:NavysInvestmentMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c92">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c93">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c94">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c95">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c96">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c97">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c98">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c99">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c100">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c101">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c102">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c103">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2025-03-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c104">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-06-30</xbrli:startDate>
    <xbrli:endDate>2024-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c105">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2025-01-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c106">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-01-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c107">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2025-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c108">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2024-03-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:unit xmlns="" id="shares">
  <xbrli:measure>xbrli:shares</xbrli:measure>
</xbrli:unit><xbrli:unit xmlns="" id="usd">
  <xbrli:measure>iso4217:USD</xbrli:measure>
</xbrli:unit><xbrli:unit xmlns="" id="usdPershares">
  <xbrli:divide>
    <xbrli:unitNumerator>
      <xbrli:measure>iso4217:USD</xbrli:measure>
    </xbrli:unitNumerator>
    <xbrli:unitDenominator>
      <xbrli:measure>xbrli:shares</xbrli:measure>
    </xbrli:unitDenominator>
  </xbrli:divide>
</xbrli:unit><xbrli:unit xmlns="" id="pure">
  <xbrli:measure>xbrli:pure</xbrli:measure>
</xbrli:unit></ix:resources></ix:header>

</div></div></body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>ex31-1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit</FONT>
31.1</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 2.25in; text-align: center; text-indent: -2.25in">Certification
of the Chief Executive Officer</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 2.25in; text-align: center; text-indent: -2.25in">Pursuant to Rules
13a-14(a) and 15d-14(a) under the Securities Exchange Act of 1934,</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 2.25in; text-align: center; text-indent: -2.25in">as adopted pursuant
to Section 302 of the Sarbanes-Oxley Act of 2002</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">I, David O&rsquo;Neil, certify that:</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">1.</TD><TD STYLE="text-align: justify">I have reviewed this quarterly report on Form 10-Q of Espey Mfg. &amp; Electronics Corp;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">2.</TD><TD STYLE="text-align: justify">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to
state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not
misleading with respect to the period covered by this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">3.</TD><TD STYLE="text-align: justify">Based on my knowledge, the financial statements, and other financial information included in this report,
fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for,
the periods presented in this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">4.</TD><TD STYLE="text-align: justify">The registrant&rsquo;s other certifying officer and I are responsible for establishing and maintaining
disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15(d)-15(e)) and internal control over financial reporting
(as defined in Exchange Act Rules 13a-15(f) and 15(d)-15(f)) for the registrant and have:</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(a)</TD><TD STYLE="text-align: justify">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to
be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries,
is made known to us by others within those entities, particularly during the period in which this report is being prepared;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(b)</TD><TD STYLE="text-align: justify">Designed such internal control over financial reporting, or caused such internal control over financial
reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the
preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(c)</TD><TD STYLE="text-align: justify">Evaluated the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented
in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered
by this report based on such evaluation; and</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(d)</TD><TD STYLE="text-align: justify">Disclosed in this report any change in the registrant&rsquo;s internal control over financial reporting
that occurred during the registrant&rsquo;s most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual
report) that has materially affected, or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial
reporting; and</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0pt"></TD><TD STYLE="width: 18pt">5.</TD><TD STYLE="text-align: justify">The registrant&rsquo;s other certifying officer and I have disclosed, based on our most recent evaluation
of internal control over financial reporting, to the registrant&rsquo;s auditors and the audit committee of registrant&rsquo;s board of
directors (or persons performing the equivalent functions):</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(a)</TD><TD STYLE="text-align: justify">All significant deficiencies and material weaknesses in the design or operation of internal control over
financial reporting which are reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report
financial information; and</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(b)</TD><TD STYLE="text-align: justify">Any fraud, whether or not material, that involves management or other employees who have a significant
role in the registrant&rsquo;s internal control over financial reporting.</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-indent: -0.25in">Date: May 12, 2025</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="border-bottom: Black 1pt solid; width: 3in; font-size: 10pt">/s/ David O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">David O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">President and Chief Executive Officer</TD></TR>
  </TABLE>
<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 24 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->24<!-- Field: /Sequence -->&nbsp;</P></DIV>
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt"><P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>ex31-2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit</FONT>
31.2</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Certification of the Principal Financial Officer</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Pursuant to Rules 13a-14(a) and 15d-14(a) under
the Securities Exchange Act of 1934,</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">as adopted pursuant to Section 302 of the Sarbanes-Oxley
Act of 2002</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">I, Kaitlyn O&rsquo;Neil, certify that:</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">1.</TD><TD STYLE="text-align: justify">I have reviewed this quarterly report on Form 10-Q of Espey Mfg. &amp; Electronics Corp;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">2.</TD><TD STYLE="text-align: justify">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to
state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not
misleading with respect to the period covered by this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">3.</TD><TD STYLE="text-align: justify">Based on my knowledge, the financial statements, and other financial information included in this report,
fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for,
the periods presented in this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">4.</TD><TD STYLE="text-align: justify">The registrant&rsquo;s other certifying officer and I are responsible for establishing and maintaining
disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15(d)-15(e)) and internal control over financial reporting
(as defined in Exchange Act Rules 13a-15(f) and 15(d)-15(f)) for the registrant and have:</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(a)</TD><TD STYLE="text-align: justify">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to
be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries,
is made known to us by others within those entities, particularly during the period in which this report is being prepared;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(b)</TD><TD STYLE="text-align: justify">Designed such internal control over financial reporting, or caused such internal control over financial
reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the
preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(c)</TD><TD STYLE="text-align: justify">Evaluated the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented
in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered
by this report based on such evaluation; and</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(d)</TD><TD STYLE="text-align: justify">Disclosed in this report any change in the registrant&rsquo;s internal control over financial reporting
that occurred during the registrant&rsquo;s most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual
report) that has materially affected, or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial
reporting; and</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">5.</TD><TD STYLE="text-align: justify">The registrant&rsquo;s other certifying officer and I have disclosed, based on our most recent evaluation
of internal control over financial reporting, to the registrant&rsquo;s auditors and the audit committee of registrant&rsquo;s board of
directors (or persons performing the equivalent functions):</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(a)</TD><TD STYLE="text-align: justify">All significant deficiencies and material weaknesses in the design or operation of internal control over
financial reporting which are reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report
financial information; and</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 18pt"></TD><TD STYLE="width: 22.5pt">(b)</TD><TD STYLE="text-align: justify">Any fraud, whether or not material, that involves management or other employees who have a significant
role in the registrant&rsquo;s internal control over financial reporting.</TD></TR></TABLE>

<P STYLE="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-indent: -0.25in">Date: May 12, 2025</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="border-bottom: Black 1pt solid; width: 3in; font-size: 10pt">/s/ Kaitlyn O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">Kaitlyn O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">Principal Financial Officer</TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1.25in"></P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 25 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->25<!-- Field: /Sequence -->&nbsp;</P></DIV>
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt"><P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 1.25in"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>ex32-1.htm
<DESCRIPTION>EX-32.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit</FONT>
32.1</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Certification of the Chief Executive Officer pursuant
to 18 U.S.C. Section 1350,</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">as adopted pursuant to Section 906 of the Sarbanes-Oxley
Act of 2002</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In connection with this quarterly report of
Espey Mfg. &amp; Electronics Corp. (the &quot;Company&quot;) on Form 10-Q for the period ended March 31, 2025 as filed with the
Securities and Exchange Commission on the date hereof (the &ldquo;report&rdquo;), I, David O&rsquo;Neil, President and Chief
Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the
Sarbanes-Oxley Act of 2002, that to my knowledge:</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0.5in"></TD><TD STYLE="width: 0.5in">1.</TD><TD>The report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</TD></TR></TABLE>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0.5in"></TD><TD STYLE="width: 0.5in">2.</TD><TD>The information contained in this report fairly presents, in all material respects, the financial condition and results of operations
of the Company.</TD></TR></TABLE>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-indent: -0.25in">Date: May 12, 2025</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="border-bottom: Black 1pt solid; width: 3in; font-size: 10pt">/s/ David O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">David O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">President and Chief Executive Officer</TD></TR>
  </TABLE>
<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 26 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->26<!-- Field: /Sequence -->&nbsp;</P></DIV>
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt"><P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->



</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>ex32-2.htm
<DESCRIPTION>EX-32.2
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit
</FONT>32.2</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Certification of the Principal Financial Officer
pursuant to 18 U.S.C. Section 1350,</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">as adopted pursuant to Section 906 of the Sarbanes-Oxley
Act of 2002</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In connection with this quarterly report of Espey
Mfg. &amp; Electronics Corp. (the &quot;Company&quot;) on Form 10-Q for the period ended March 31, 2025 as filed with the Securities and
Exchange Commission on the date hereof (the &ldquo;report&rdquo;), I, Kaitlyn O&rsquo;Neil, Principal Financial Officer of the Company,
certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to my knowledge:</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0.5in"></TD><TD STYLE="width: 0.5in">1.</TD><TD>The report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</TD></TR></TABLE>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0.5in"></TD><TD STYLE="width: 0.5in">2.</TD><TD>The information contained in this report fairly presents, in all material respects, the financial condition and results of operations
of the Company.</TD></TR></TABLE>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in; text-indent: -0.25in">Date: May 12, 2025</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="border-bottom: Black 1pt solid; width: 3in; font-size: 10pt">/s/ Kaitlyn O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">Kaitlyn O&rsquo;Neil</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="font-size: 10pt">Principal Financial Officer</TD></TR></TABLE>


<P STYLE="margin: 0"></P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 27 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->27<!-- Field: /Sequence -->&nbsp;</P></DIV>
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt"><P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

<P STYLE="margin: 0"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>image_001.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 image_001.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0@)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" !! *<# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#W^BBB@ HK
M'O/$VG6;,OF^84^\4Y ]L^M97_"=0D.ZV,FQ6 Y<9.:VC0J25TC-U8+=G6T5
MB6?BK3;LKEVB#' +C@'T/I6T"" 000>A%9RA*/Q(J,E+9BT445)04444 %%%
M4=2UG3=(C#W]Y%!G[JL?F;Z*.3^ II.3LA-I:LO45RDGB?6+_P"70?#ES*IZ
M7-^?L\?U"GYB/P%4Y/#OC+5^=3\3QV,1',&FPXQ_P,\UNJ%OCDE^+^Y7,W4_
ME3?]>9V%S>VMDF^ZN88%]97"C]:P+KX@^%+,D2:W;,1U$1+_ /H(-9,7PE\/
M%A)?S:AJ$O=[BX.3^6*U(?AUX2A&%T.W;W<LW\S6BCA8[RD_1)?FR6ZSV21F
M2?%_PC&<+=7,GNMNW]<4U/C#X18X-Q=)[M;G^E;A\">%2,'0;''_ %RJA>?"
M_P (7BD'2EA)_BAD9?ZXK12P/52^]$-8CHT7-/\ 'WA?4V5+?6;8.W1928S_
M ./8KHU974,I!4C((/!KQKQ#\$C'$\^@7S.PY^SW. 3[!A_4?C7&>'/&FO\
M@C5#:RM*T$3[)[*<G ]<9^Z?I70L!2K1<L-.[71F?UF=-VJQMYH^F:*JZ;J$
M&JZ9;7]JVZ"XC$B$]<'U]Z*\AIIV9VIWU1:KB_$^OF:9]+M)3&0=KR#HQ_N^
MWUKJ=3NOL6F7%QG!1"1]>U>4P,6N&E;E@&<_7'^-=F%I*5YOH<V(FU:*ZC[B
M&4$(B%HDX#+R">YXIBH_V6;Y&^\O\)]ZA4E>02#Z@U82:7[++^]D^\O\1]Z]
M+4XM!((Y0W,3F-AA\C Q^-;^D^*+?PX?L^L7T:6A8*LCM\L9/3GW]*YIF9_O
M,6^IS7._$/GPJC^KQ@_@2/\ "LJZ3@[FE)^^K'L?_"PO"'_0Q:?_ -_A6EI/
MB+1M=:5=*U*VO#$ 9!"^[;GIG\J^8_ G@"X\=27R07T5K]D"$F1"V[=GT^E>
MM>'/!]Y\+/#OB/57OH;MS:[XPD97:R!L9SUY(KQ3U#M];\:^'/#LODZIJT$$
MV,^5RS@>ZJ"1^--TGQQX9UN41:?K-K+,>D1;8Q^@;!-?+_A[3'\8^+H;.^U-
M8)+R1FDN9SDDX)_$GH*]=TCX')I/BRPOGU%;S38&\UXW3:Y8<J.X(S_*@#T'
M7-=T[39DM]6UVWTL2+N5 X5W7IG<>GX#\:S;+Q/\/[&4RP:QI8G;[TSS!I&^
MK')_6O,_V@?^1BTG_KT;_P!#-9/AWX177B7P='KEIJD22R!RMN\1P2I(QNSW
MQZ57.[61/*MSZ-L=1LM4MA<6%W!=0GH\+AQ^8K(N?'/A:SN9;:XUZQBFB8HZ
M-* 58<$&OG7X8^(+WP_XZL(8Y6%O=S+;7$6>&#' ./4$YK,\7Q&;X@:Q"#@O
MJ$JY],N14E6/IC_A8/A ]/$6G_\ ?X4Y/'_A)W5%\0Z>68X \X=:\LMO@%J,
M%U%-_;MJ?+<-CR&YP<^M9'QB\"?V%JO]N:?%C3KQ_P!XJCB&4\G\&ZCWS[4
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
M';B02VVAB69YD$+);1YD+$X8-VY4GD@]#5]_&%JJB9DDAACEECE5T!?Y$)Z
MY4\<9'-:5OH&FVVT10,$2431H9&*QL,XVC.!U/ ]:9_PC6DLTK26@E:4DNTK
MLY;*E<<GI@D8[4 4IO%\, =)--O1=1EO,MP$+(JH'+$[L8VGUZ\5T$,J3P1S
M1G*2*&4^Q&16;#X<TN%"JVQ8D.&9Y&9FW*%;))R?E 'X5I11I#$D4:[410JC
MT Z4 /HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
**** "BBB@#__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>7
<FILENAME>esp-20250331.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Mon May 12 18:57:27 UTC 2025 -->
<xs:schema elementFormDefault="qualified" xmlns:srt-types="http://fasb.org/srt-types/2025" targetNamespace="http://espey.com/20250331" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-types="http://fasb.org/us-types/2025" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:esp="http://espey.com/20250331" xmlns:dtr="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="esp-20250331_lab.xml" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef"/>
      <link:linkbaseRef xlink:type="simple" xlink:href="esp-20250331_pre.xml" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef"/>
      <link:linkbaseRef xlink:type="simple" xlink:href="esp-20250331_def.xml" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef"/>
      <link:linkbaseRef xlink:type="simple" xlink:href="esp-20250331_cal.xml" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef"/>
      <link:roleType roleURI="http://espey.com/role/ConsolidatedBalanceSheet" id="esp_r_ConsolidatedBalanceSheet">
        <link:definition>995301 - Statement - Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals" id="esp_r_ConsolidatedBalanceSheet_Parentheticals">
        <link:definition>995302 - Statement - Balance Sheets (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ConsolidatedIncomeStatement" id="esp_r_ConsolidatedIncomeStatement">
        <link:definition>995303 - Statement - Statements of Comprehensive Income (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable" id="esp_r_StatementsofChangesinStockholdersEquityUnauditedTable">
        <link:definition>995304 - Statement - Statements of Changes in Stockholders' Equity (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals" id="esp_r_StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals">
        <link:definition>995305 - Statement - Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ConsolidatedCashFlow" id="esp_r_ConsolidatedCashFlow">
        <link:definition>995306 - Statement - Statements of Cash Flows (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/BasisofPresentation" id="esp_r_BasisofPresentation">
        <link:definition>995307 - Disclosure - Basis of Presentation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/InvestmentSecurities" id="esp_r_InvestmentSecurities">
        <link:definition>995308 - Disclosure - Investment Securities</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/NetIncomePerShare" id="esp_r_NetIncomePerShare">
        <link:definition>995309 - Disclosure - Net Income Per Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/StockBasedCompensation" id="esp_r_StockBasedCompensation">
        <link:definition>995310 - Disclosure - Stock Based Compensation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/CommitmentsandContingencies" id="esp_r_CommitmentsandContingencies">
        <link:definition>995311 - Disclosure - Commitments and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/Revenue" id="esp_r_Revenue">
        <link:definition>995312 - Disclosure - Revenue</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/RecentlyIssuedAccountingStandards" id="esp_r_RecentlyIssuedAccountingStandards">
        <link:definition>995313 - Disclosure - Recently Issued Accounting Standards</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/EmployeeStockOwnershipPlan" id="esp_r_EmployeeStockOwnershipPlan">
        <link:definition>995314 - Disclosure - Employee Stock Ownership Plan</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/InvestmentSecuritiesTables" id="esp_r_InvestmentSecuritiesTables">
        <link:definition>996000 - Disclosure - Investment Securities (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/NetIncomePerShareTables" id="esp_r_NetIncomePerShareTables">
        <link:definition>996001 - Disclosure - Net Income Per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/StockBasedCompensationTables" id="esp_r_StockBasedCompensationTables">
        <link:definition>996002 - Disclosure - Stock Based Compensation (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables" id="esp_r_EmployeeStockOwnershipPlanTables">
        <link:definition>996003 - Disclosure - Employee Stock Ownership Plan (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" id="esp_r_ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable">
        <link:definition>996004 - Disclosure - Investment Securities - Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" id="esp_r_ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable">
        <link:definition>996005 - Disclosure - Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XncOfhwynpbLSlg/EHV+wnkBCjYz99GxoVyTdmm5esYO6v4WZiwUdXqbHm3T9lIqBI6ihpM1ztbmPpUOBu6RJYQRhwVY1ieH1g7XlcmlNCUIFKPfhGyXVPC1TQLe/FNpUnR3X3JcQc0H2GSdR7a94SovSoIMZeuQFKrmje6TqS2EQ==] CSR-->
      <link:roleType roleURI="http://espey.com/role/NetIncomePerShareDetails" id="esp_r_NetIncomePerShareDetails">
        <link:definition>996006 - Disclosure - Net Income Per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" id="esp_r_ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable">
        <link:definition>996007 - Disclosure - Net Income Per Share - Schedule of Denominators of the Basic and Diluted Earnings Per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/StockBasedCompensationDetails" id="esp_r_StockBasedCompensationDetails">
        <link:definition>996008 - Disclosure - Stock Based Compensation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable" id="esp_r_ScheduleofWeightedAverageAssumptionsofOptionAwardTable">
        <link:definition>996009 - Disclosure - Stock Based Compensation - Schedule of Weighted Average Assumptions of Option Award (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable" id="esp_r_ScheduleofStockOptionActivityTable">
        <link:definition>996010 - Disclosure - Stock Based Compensation - Schedule of Stock Option Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable" id="esp_r_ScheduleofChangesinNonVestedStockOptionsTable">
        <link:definition>996011 - Disclosure - Stock Based Compensation - Schedule of Changes in Non-Vested Stock Options (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/CommitmentsandContingenciesDetails" id="esp_r_CommitmentsandContingenciesDetails">
        <link:definition>996012 - Disclosure - Commitments and Contingencies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/RevenueDetails" id="esp_r_RevenueDetails">
        <link:definition>996013 - Disclosure - Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/EmployeeStockOwnershipPlanDetails" id="esp_r_EmployeeStockOwnershipPlanDetails">
        <link:definition>996014 - Disclosure - Employee Stock Ownership Plan (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/ScheduleofESOPSharesTable" id="esp_r_ScheduleofESOPSharesTable">
        <link:definition>996015 - Disclosure - Employee Stock Ownership Plan - Schedule of ESOP Shares (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://espey.com/role/DocumentAndEntityInformation" id="DocumentAndEntityInformation">
        <link:definition>000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://fasb.org/us-types/2025" schemaLocation="https://xbrl.fasb.org/us-gaap/2025/elts/us-types-2025.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2024-01-31" schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://fasb.org/srt-types/2025" schemaLocation="https://xbrl.fasb.org/srt/2025/elts/srt-types-2025.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/sic/2025" schemaLocation="https://xbrl.sec.gov/sic/2025/sic-2025.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/ecd/2025" schemaLocation="https://xbrl.sec.gov/ecd/2025/ecd-2025.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/ecd-sub/2025" schemaLocation="https://xbrl.sec.gov/ecd/2025/ecd-sub-2025.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei-sub/2025" schemaLocation="https://xbrl.sec.gov/dei/2025/dei-sub-2025.xsd"/>
  <xs:element name="ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract"/>
  <xs:element name="ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract"/>
  <xs:element name="ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract"/>
  <xs:element name="ScheduleOfStockOptionActivityAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfStockOptionActivityAbstract"/>
  <xs:element name="ComprehensiveIncomeAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ComprehensiveIncomeAbstract"/>
  <xs:element name="ComprehensiveIncomeAbstract0" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ComprehensiveIncomeAbstract0"/>
  <xs:element name="ComprehensiveIncomeAbstract1" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ComprehensiveIncomeAbstract1"/>
  <xs:element name="ComprehensiveIncomeAbstract2" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ComprehensiveIncomeAbstract2"/>
  <xs:element name="UnlabeledAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract"/>
  <xs:element name="June302024Abstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_June302024Abstract"/>
  <xs:element name="June302024Abstract0" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_June302024Abstract0"/>
  <xs:element name="DilutedEpsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DilutedEpsAbstract"/>
  <xs:element name="DeferredTaxAssetsCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredTaxAssetsCurrent"/>
  <xs:element name="TotalStockholdersEquityBeforyEsopAndTreasuryStock" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item" id="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
  <xs:element name="UnearnedEsopSharesCost" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_UnearnedEsopSharesCost"/>
  <xs:element name="IncreaseDecreaseInVacationAccrual" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_IncreaseDecreaseInVacationAccrual"/>
  <xs:element name="IncreaseDecreaseinESOPPayable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_IncreaseDecreaseinESOPPayable"/>
  <xs:element name="IncreasedecreaseInPayrollAndOtherTaxesWithheld" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
  <xs:element name="ProceedsFromGrantAward" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_ProceedsFromGrantAward"/>
  <xs:element name="EmployeeStockOwnershipPlanTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanTextBlock"/>
  <xs:element name="InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable"/>
  <xs:element name="CommonSharesOutstandingBasic" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_CommonSharesOutstandingBasic"/>
  <xs:element name="CommonSharesOutstandingDiluted" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_CommonSharesOutstandingDiluted"/>
  <xs:element name="StockBasedCompensationScheduleofStockOptionActivityDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable"/>
  <xs:element name="WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted"/>
  <xs:element name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm"/>
  <xs:element name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm"/>
  <xs:element name="StockBasedCompensationDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationDetailsTable"/>
  <xs:element name="PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" type="xbrli:stringItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear"/>
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber"/>
  <xs:element name="DividendPayableAmountPerShare" type="dtr:perShareItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DividendPayableAmountPerShare"/>
  <xs:element name="CommitmentsandContingenciesDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_CommitmentsandContingenciesDetailsTable"/>
  <xs:element name="TerminationWithdrawalObligation" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item" id="esp_TerminationWithdrawalObligation"/>
  <xs:element name="RevenueDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_RevenueDetailsTable"/>
  <xs:element name="ContractTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ContractTerm"/>
  <xs:element name="BacklogPercentageOfRecognitionsYearOne" type="dtr:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item" id="esp_BacklogPercentageOfRecognitionsYearOne"/>
  <xs:element name="BacklogPercentageOfRecognitionsYearTwo" type="dtr:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item" id="esp_BacklogPercentageOfRecognitionsYearTwo"/>
  <xs:element name="BacklogPercentageOfRecognitionsYearThree" type="dtr:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item" id="esp_BacklogPercentageOfRecognitionsYearThree"/>
  <xs:element name="BacklogPercentageOfRecognitions" type="dtr:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item" id="esp_BacklogPercentageOfRecognitions"/>
  <xs:element name="EmployeeStockOwnershipPlanDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_EmployeeStockOwnershipPlanDetailsTable"/>
  <xs:element name="EmployeeStockOwnershipPlanHoursWorked" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanHoursWorked"/>
  <xs:element name="ASC606Member" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ASC606Member"/>
  <xs:element name="EmployeeStockOwnershipPlanMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanMember"/>
  <xs:element name="IncentiveStockOptionMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_IncentiveStockOptionMember"/>
  <xs:element name="IndividualEmployeeMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_IndividualEmployeeMember"/>
  <xs:element name="MilestonesAchievedMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_MilestonesAchievedMember"/>
  <xs:element name="NavysInvestmentMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NavysInvestmentMember"/>
  <xs:element name="NonEmployeeDirectorsMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NonEmployeeDirectorsMember"/>
  <xs:element name="NonQualifiedStockOptionsMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NonQualifiedStockOptionsMember"/>
  <xs:element name="RestrictedStockPlanMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_RestrictedStockPlanMember"/>
  <xs:element name="TwoThousandSevenPlanMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_TwoThousandSevenPlanMember"/>
  <xs:element name="TwoThousandSeventeenPlanMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_TwoThousandSeventeenPlanMember"/>
  <xs:element name="UnearnedESOPSharesMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnearnedESOPSharesMember"/>
  <xs:element name="UnitsDeliveredMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnitsDeliveredMember"/>
  <xs:element name="DocumentAndEntityInformationAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DocumentAndEntityInformationAbstract"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>8
<FILENAME>esp-20250331_cal.xml
<DESCRIPTION>XBRL CALCULATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Mon May 12 18:57:27 UTC 2025 -->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <calculationLink xlink:role="http://espey.com/role/ConsolidatedBalanceSheet" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryRawMaterials"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterials" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWorkInProcess"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcess" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="3" weight="1"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" order="4" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetsCurrent" xlink:href="esp-20250331.xsd#esp_DeferredTaxAssetsCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="esp_DeferredTaxAssetsCurrent" order="5" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="6" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedSalariesCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedSalariesCurrent" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedVacationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedVacationCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedVacationCurrent" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent" order="4" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" order="5" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedPayrollTaxesCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedPayrollTaxesCurrent" order="6" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="7" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TaxesPayableCurrent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_TaxesPayableCurrent" order="8" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20250331.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockValue"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="us-gaap_CommonStockValue" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="4" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedEsopSharesCost" xlink:href="esp-20250331.xsd#esp_UnearnedEsopSharesCost"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="esp_UnearnedEsopSharesCost" order="2" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockValue"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_TreasuryStockValue" order="3" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_CommitmentsAndContingencies" order="2" weight="1"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" order="3" weight="1"/>
  </calculationLink>
  <calculationLink xlink:role="http://espey.com/role/ConsolidatedIncomeStatement" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Revenues"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_Revenues" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CostOfRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfRevenue" order="2" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="2" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NonoperatingIncomeExpense"/>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XncOfhwynpbLSlg/EHV+wnkBCjYz99GxoVyTdmm5esYO6v4WZiwUdXqbHm3T9lIqBI6ihpM1ztbmPpUOBu6RJYQRhwVY1ieH1g7XlcmlNCUIFKPfhGyXVPC1TQLe/FNpUnR3X3JcQc0H2GSdR7a94SoOqncKIABeRZWLvhbJnZ3tw==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentIncomeInterest"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InvestmentIncomeInterest" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNonoperatingIncome"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncome" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="2" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_NetIncomeLoss" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" order="2" weight="1"/>
  </calculationLink>
  <calculationLink xlink:role="http://espey.com/role/ConsolidatedCashFlow" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetIncomeLoss" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Depreciation"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_Depreciation" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="4" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="5" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="6" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedSalaries"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedSalaries" order="7" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseInVacationAccrual" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseInVacationAccrual"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="esp_IncreaseDecreaseInVacationAccrual" order="8" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseinESOPPayable" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseinESOPPayable"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="esp_IncreaseDecreaseinESOPPayable" order="9" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" order="10" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20250331.xsd#esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" order="11" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" order="12" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" order="13" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" order="14" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="15" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" order="16" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="17" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="18" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <loc xlink:type="locator" xlink:label="esp_ProceedsFromGrantAward" xlink:href="esp-20250331.xsd#esp_ProceedsFromGrantAward"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="esp_ProceedsFromGrantAward" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="4" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireInvestments" order="5" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromRepurchaseOfEquity"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromRepurchaseOfEquity" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="2" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="1" weight="1"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="2" weight="1"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="3" weight="1"/>
  </calculationLink>
  <calculationLink xlink:role="http://espey.com/role/ScheduleofESOPSharesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" order="3" weight="1"/>
  </calculationLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>9
<FILENAME>esp-20250331_def.xml
<DESCRIPTION>XBRL DEFINITION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Mon May 12 18:57:27 UTC 2025 -->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedBalanceSheet_Parentheticals" roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StatementsofChangesinStockholdersEquityUnauditedTable" roleURI="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals" roleURI="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_BasisofPresentation" roleURI="http://espey.com/role/BasisofPresentation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_InvestmentSecurities" roleURI="http://espey.com/role/InvestmentSecurities"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_NetIncomePerShare" roleURI="http://espey.com/role/NetIncomePerShare"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StockBasedCompensation" roleURI="http://espey.com/role/StockBasedCompensation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_CommitmentsandContingencies" roleURI="http://espey.com/role/CommitmentsandContingencies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_Revenue" roleURI="http://espey.com/role/Revenue"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_RecentlyIssuedAccountingStandards" roleURI="http://espey.com/role/RecentlyIssuedAccountingStandards"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_EmployeeStockOwnershipPlan" roleURI="http://espey.com/role/EmployeeStockOwnershipPlan"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_InvestmentSecuritiesTables" roleURI="http://espey.com/role/InvestmentSecuritiesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_NetIncomePerShareTables" roleURI="http://espey.com/role/NetIncomePerShareTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StockBasedCompensationTables" roleURI="http://espey.com/role/StockBasedCompensationTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_EmployeeStockOwnershipPlanTables" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" roleURI="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofWeightedAverageAssumptionsofOptionAwardTable" roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofStockOptionActivityTable" roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofChangesinNonVestedStockOptionsTable" roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_NetIncomePerShareDetails" roleURI="http://espey.com/role/NetIncomePerShareDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StockBasedCompensationDetails" roleURI="http://espey.com/role/StockBasedCompensationDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_CommitmentsandContingenciesDetails" roleURI="http://espey.com/role/CommitmentsandContingenciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_RevenueDetails" roleURI="http://espey.com/role/RevenueDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_EmployeeStockOwnershipPlanDetails" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanDetails"/>
  <arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default"/>
  <arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain"/>
  <arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension"/>
  <arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member"/>
  <arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" arcroleURI="http://xbrl.org/int/dim/arcrole/all"/>
  <definitionLink xlink:role="http://espey.com/role/ConsolidatedBalanceSheet" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryRawMaterials"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_InventoryRawMaterials" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWorkInProcess"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_InventoryWorkInProcess" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_InventoryNet" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetsCurrent" xlink:href="esp-20250331.xsd#esp_DeferredTaxAssetsCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="esp_DeferredTaxAssetsCurrent" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsCurrent" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_Assets" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccountsPayableCurrent" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedSalariesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccruedSalariesCurrent" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedVacationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedVacationCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccruedVacationCurrent" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent" order="15" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" order="16" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedPayrollTaxesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccruedPayrollTaxesCurrent" order="17" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="18" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TaxesPayableCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_TaxesPayableCurrent" order="19" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesCurrent" order="20" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_Liabilities" order="21" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" order="22" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockValue" order="23" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="24" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="25" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="26" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20250331.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" order="27" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedEsopSharesCost" xlink:href="esp-20250331.xsd#esp_UnearnedEsopSharesCost"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="esp_UnearnedEsopSharesCost" order="28" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_TreasuryStockValue" order="29" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StockholdersEquity" order="30" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="31" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesAuthorized" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesIssued"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesIssued" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesHeldInEmployeeTrustShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_TreasuryStockCommonShares" order="6" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ConsolidatedIncomeStatement" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Revenues"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_Revenues" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CostOfRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CostOfRevenue" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_GrossProfit" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OperatingIncomeLoss" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentIncomeInterest"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_InvestmentIncomeInterest" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNonoperatingIncome"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherNonoperatingIncome" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NonoperatingIncomeExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NetIncomeLoss" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDiluted"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="15" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="16" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared" order="17" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquityComponentDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockCommonMember" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedESOPSharesMember" xlink:href="esp-20250331.xsd#esp_UnearnedESOPSharesMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="esp_UnearnedESOPSharesMember" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DividendsCommonStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DividendsCommonStock" order="9" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ConsolidatedCashFlow" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_ShareBasedCompensation" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Depreciation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_Depreciation" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedSalaries"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedSalaries" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseInVacationAccrual" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseInVacationAccrual"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="esp_IncreaseDecreaseInVacationAccrual" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseinESOPPayable" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseinESOPPayable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="esp_IncreaseDecreaseinESOPPayable" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20250331.xsd#esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" order="15" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" order="16" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" order="17" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="18" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="19" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ProceedsFromGrantAward" xlink:href="esp-20250331.xsd#esp_ProceedsFromGrantAward"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="esp_ProceedsFromGrantAward" order="20" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" order="21" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_PaymentsToAcquireInvestments" order="22" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" order="23" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="24" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="25" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromRepurchaseOfEquity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_ProceedsFromRepurchaseOfEquity" order="26" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="27" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" order="28" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="29" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" order="30" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/BasisofPresentation" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/InvestmentSecurities" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_InvestmentTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/NetIncomePerShare" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/StockBasedCompensation" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/CommitmentsandContingencies" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/Revenue" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenuesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/RecentlyIssuedAccountingStandards" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/EmployeeStockOwnershipPlan" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:to="esp_EmployeeStockOwnershipPlanTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/InvestmentSecuritiesTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/NetIncomePerShareTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/StockBasedCompensationTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock"/>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XncOfhwynpbLSlg/EHV+wnkBCjYz99GxoVyTdmm5esYO6v4WZiwUdXqbHm3T9lIqBI6ihpM1ztbmPpUOBu6RJYQRhwVY1ieH1g7XlcmlNCUIFKPfhGyXVPC1TQLe/FNpUnR3X3JcQc0H2GSdR7a94SoyQPteDbm3S64TYsifiryUQ==] CSR-->
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FinancialInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinancialInstrumentAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:to="us-gaap_FinancialInstrumentAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CertificatesOfDepositMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CertificatesOfDepositMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_CertificatesOfDepositMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MunicipalBondsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_MunicipalBondsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_MunicipalBondsMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_USTreasuryBillSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_USTreasuryBillSecuritiesMember" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TradingSecuritiesDebtAmortizedCost"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_TradingSecuritiesDebtAmortizedCost" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:href="esp-20250331.xsd#esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:to="srt_StatementScenarioAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain_0" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_CommonSharesOutstandingBasic" xlink:href="esp-20250331.xsd#esp_CommonSharesOutstandingBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="esp_CommonSharesOutstandingBasic" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesIssuedBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_CommonSharesOutstandingDiluted" xlink:href="esp-20250331.xsd#esp_CommonSharesOutstandingDiluted"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="esp_CommonSharesOutstandingDiluted" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="9" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="4" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofStockOptionActivityTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:href="esp-20250331.xsd#esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:to="us-gaap_AwardTypeAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockOptionMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockOptionMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" xlink:href="esp-20250331.xsd#esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xlink:href="esp-20250331.xsd#esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xlink:href="esp-20250331.xsd#esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" order="15" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" order="16" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" order="17" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" order="18" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" order="19" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" order="20" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" order="7" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofESOPSharesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" order="4" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/NetIncomePerShareDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/StockBasedCompensationDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsTable" xlink:href="esp-20250331.xsd#esp_StockBasedCompensationDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="esp_StockBasedCompensationDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsTable" xlink:to="us-gaap_PlanNameAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsTable" xlink:to="srt_RangeAxis" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember_0" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsTable" xlink:to="srt_TitleOfIndividualAxis" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_0" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsTable" xlink:to="us-gaap_AwardTypeAxis" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_NonQualifiedStockOptionsMember" xlink:href="esp-20250331.xsd#esp_NonQualifiedStockOptionsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="esp_NonQualifiedStockOptionsMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncentiveStockOptionMember" xlink:href="esp-20250331.xsd#esp_IncentiveStockOptionMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="esp_IncentiveStockOptionMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOptionMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_RestrictedStockPlanMember" xlink:href="esp-20250331.xsd#esp_RestrictedStockPlanMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="esp_RestrictedStockPlanMember" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_TwoThousandSeventeenPlanMember" xlink:href="esp-20250331.xsd#esp_TwoThousandSeventeenPlanMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="esp_TwoThousandSeventeenPlanMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_TwoThousandSevenPlanMember" xlink:href="esp-20250331.xsd#esp_TwoThousandSevenPlanMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="esp_TwoThousandSevenPlanMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_NonEmployeeDirectorsMember" xlink:href="esp-20250331.xsd#esp_NonEmployeeDirectorsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="esp_NonEmployeeDirectorsMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IndividualEmployeeMember" xlink:href="esp-20250331.xsd#esp_IndividualEmployeeMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="esp_IndividualEmployeeMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_MaximumMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredOtherTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredOtherTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_DeferredOtherTaxExpenseBenefit" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:href="esp-20250331.xsd#esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:href="esp-20250331.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DividendPayableAmountPerShare" xlink:href="esp-20250331.xsd#esp_DividendPayableAmountPerShare"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="esp_DividendPayableAmountPerShare" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" order="13" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/CommitmentsandContingenciesDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_OtherCommitmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_CommitmentsandContingenciesDetailsTable" xlink:href="esp-20250331.xsd#esp_CommitmentsandContingenciesDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="esp_CommitmentsandContingenciesDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_CommitmentsandContingenciesDetailsTable" xlink:to="us-gaap_InvestmentTypeAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeCategorizationMember_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_NavysInvestmentMember" xlink:href="esp-20250331.xsd#esp_NavysInvestmentMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentTypeCategorizationMember" xlink:to="esp_NavysInvestmentMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LettersOfCreditOutstandingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CustomerFunds" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CustomerFunds"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_CustomerFunds" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_DeferredTaxAssetsGross" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_AccountsPayableCurrentAndNoncurrent" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_TerminationWithdrawalObligation" xlink:href="esp-20250331.xsd#esp_TerminationWithdrawalObligation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="esp_TerminationWithdrawalObligation" order="6" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/RevenueDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_RevenueDetailsTable" xlink:href="esp-20250331.xsd#esp_RevenueDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="esp_RevenueDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_RevenueDetailsTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TypeOfAdoptionMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TypeOfAdoptionMember_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TypeOfAdoptionMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_RevenueDetailsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_RevenueDetailsTable" xlink:to="srt_StatementScenarioAxis" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain_0" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ASC606Member" xlink:href="esp-20250331.xsd#esp_ASC606Member"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="esp_ASC606Member" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_UnitsDeliveredMember" xlink:href="esp-20250331.xsd#esp_UnitsDeliveredMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="esp_UnitsDeliveredMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_MilestonesAchievedMember" xlink:href="esp-20250331.xsd#esp_MilestonesAchievedMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="esp_MilestonesAchievedMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OrderOrProductionBacklogMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_OrderOrProductionBacklogMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Revenues"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_Revenues" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_ContractWithCustomerLiability" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ContractTerm" xlink:href="esp-20250331.xsd#esp_ContractTerm"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="esp_ContractTerm" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearOne" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearOne"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="esp_BacklogPercentageOfRecognitionsYearOne" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearTwo" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearTwo"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="esp_BacklogPercentageOfRecognitionsYearTwo" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearThree" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearThree"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="esp_BacklogPercentageOfRecognitionsYearThree" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitions" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitions"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="esp_BacklogPercentageOfRecognitions" order="8" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="esp_EmployeeStockOwnershipPlanDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_EmployeeStockOwnershipPlanDetailsTable" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanMember" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:to="esp_EmployeeStockOwnershipPlanMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanHoursWorked" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanHoursWorked"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="esp_EmployeeStockOwnershipPlanHoursWorked" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" order="2" xbrldt:closed="true"/>
  </definitionLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>10
<FILENAME>esp-20250331_lab.xml
<DESCRIPTION>XBRL LABEL FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Mon May 12 18:57:27 UTC 2025 -->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel"/>
  <roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel"/>
  <labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Total inventories</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsCurrent_lbl" xml:lang="en-US">Total current assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Total assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US">Total current liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Liabilities_lbl" xml:lang="en-US">Total liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20250331.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock_lbl" xml:lang="en-US">Total stockholders equity before ESOP</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Total stockholders&#8217; equity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquity_lbl0" xml:lang="en-US">Balance</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquity_lbl1" xml:lang="en-US">Balance</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US">Total liabilities and stockholders&apos; equity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross profit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Operating income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NonoperatingIncomeExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Total other income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_lbl0" xml:lang="en-US">Net income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:label="us-gaap_NetIncomeLoss_lbl1" xml:lang="en-US">Net income (in Dollars)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xml:lang="en-US">Total comprehensive income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl0" xml:lang="en-US">Total comprehensive income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xml:lang="en-US">Balance (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl0" xml:lang="en-US">Balance (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl1" xml:lang="en-US">Common stock, shares outstanding</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xml:lang="en-US">Balance (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_TreasuryStockCommonShares_lbl0" xml:lang="en-US">Balance (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TreasuryStockCommonShares_lbl1" xml:lang="en-US">Treasury stock, shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xml:lang="en-US">Equity Components [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">Net cash provided by operating activities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">Net cash used in investing activities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">Net cash used in financing activities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl" xml:lang="en-US">Increase in cash and cash equivalents</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash and cash equivalents, beginning of period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl0" xml:lang="en-US">Cash and cash equivalents, end of period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xml:lang="en-US">Basis of Presentation [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentsAbstract_lbl" xml:lang="en-US">Investment Securities [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_InvestmentsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FinancialInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinancialInstrumentAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancialInstrumentAxis_lbl" xml:lang="en-US">Financial Instrument [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_FinancialInstrumentAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xml:lang="en-US">Net Income Per Share [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareAbstract_lbl0" xml:lang="en-US">Net income per share:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xml:lang="en-US">Stock Based Compensation [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xml:lang="en-US">Schedule of Weighted Average Assumptions of Option Award [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Number of Shares Subject to Option, Ending</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl0" xml:lang="en-US">Shares outstanding options (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Ending</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xml:lang="en-US">Aggregate Intrinsic Value, Ending</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_lbl" xml:lang="en-US">Schedule of Changes in Non-Vested Stock Options [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl" xml:lang="en-US">Weighted Number of Shares Subject to Option, Non-vested Beginning</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl0" xml:lang="en-US">Weighted Number of Shares Subject to Option, Non-vested Ending</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Average Grant Date Fair Value (per Option), Non-vested Beginning</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl0" xml:lang="en-US">Average Grant Date Fair Value (per Option), Non-vested Ending</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xml:lang="en-US">Commitments and Contingencies [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenuesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenuesAbstract_lbl" xml:lang="en-US">Revenue [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenuesAbstract" xlink:to="us-gaap_RevenuesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_lbl" xml:lang="en-US">Recently Issued Accounting Standards [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract_lbl" xml:lang="en-US">Employee Stock Ownership Plan [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:to="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract_lbl" xml:lang="en-US">Schedule of ESOP Shares [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP_lbl" xml:lang="en-US">Total shares held by the ESOP</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AssetsAbstract_lbl" xml:lang="en-US">ASSETS</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and cash equivalents</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl" xml:lang="en-US">Investment securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl0" xml:lang="en-US">Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl1" xml:lang="en-US">Available-for-sale debt securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Trade accounts receivable, less allowance for credit losses of $3,000</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Trade accounts receivable, allowance (in Dollars)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNetAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNetAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryNetAbstract_lbl" xml:lang="en-US">Inventories:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNetAbstract" xlink:to="us-gaap_InventoryNetAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryRawMaterials"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryRawMaterials_lbl" xml:lang="en-US">Raw materials</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterials" xlink:to="us-gaap_InventoryRawMaterials_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWorkInProcess"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryWorkInProcess_lbl" xml:lang="en-US">Work-in-process</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms_lbl" xml:lang="en-US">Costs related to contracts in process</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetsCurrent" xlink:href="esp-20250331.xsd#esp_DeferredTaxAssetsCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DeferredTaxAssetsCurrent_lbl" xml:lang="en-US">Net deferred tax assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetsCurrent" xlink:to="esp_DeferredTaxAssetsCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xml:lang="en-US">Prepaid expenses and other current assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, plant and equipment, net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US">LIABILITIES AND STOCKHOLDERS&apos; EQUITY</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xml:lang="en-US">Accounts payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Accrued expenses:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrentAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedSalariesCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedSalariesCurrent_lbl" xml:lang="en-US">Salaries and wages</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedSalariesCurrent" xlink:to="us-gaap_AccruedSalariesCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedVacationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedVacationCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedVacationCurrent_lbl" xml:lang="en-US">Vacation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedVacationCurrent" xlink:to="us-gaap_AccruedVacationCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent_lbl" xml:lang="en-US">ESOP payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_lbl" xml:lang="en-US">Other</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedPayrollTaxesCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedPayrollTaxesCurrent_lbl" xml:lang="en-US">Payroll and other taxes withheld</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedPayrollTaxesCurrent" xlink:to="us-gaap_AccruedPayrollTaxesCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US">Contract liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TaxesPayableCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TaxesPayableCurrent_lbl" xml:lang="en-US">Income taxes payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US">Commitments and contingencies (See Note 5)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Authorized 10,000,000 shares; Issued 3,129,874 shares as of March 31, 2025 and June 30, 2024. Outstanding 2,816,558 and 2,733,958 shares as of March 31, 2025 and June 30, 2024, respectively (includes 195,234 and 211,487 Unearned ESOP shares, respectively)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xml:lang="en-US">Common stock, shares authorized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesIssued"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xml:lang="en-US">Common stock, shares issued</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesHeldInEmployeeTrustShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockSharesHeldInEmployeeTrustShares_lbl" xml:lang="en-US">Unearned ESOP shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" xlink:to="us-gaap_CommonStockSharesHeldInEmployeeTrustShares_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Common stock, par value (in Dollars per share)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xml:lang="en-US">Capital in excess of par value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xml:lang="en-US">Accumulated other comprehensive gain</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Retained earnings</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Revenues"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Net sales</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Revenues_lbl0" xml:lang="en-US">Revenue</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CostOfRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CostOfRevenue_lbl" xml:lang="en-US">Cost of sales</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl" xml:lang="en-US">Selling, general and administrative expenses</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NonoperatingIncomeExpenseAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xml:lang="en-US">Other income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentIncomeInterest"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentIncomeInterest_lbl" xml:lang="en-US">Interest income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeInterest" xlink:to="us-gaap_InvestmentIncomeInterest_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNonoperatingIncome"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherNonoperatingIncome_lbl" xml:lang="en-US">Other</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncome" xlink:to="us-gaap_OtherNonoperatingIncome_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income before provision for income taxes</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Provision for income taxes</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl" xml:lang="en-US">Other comprehensive income, net of tax:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_lbl" xml:lang="en-US">Unrealized gain on investment securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasic"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Basic (in Dollars per share)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDiluted"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Diluted (in Dollars per share)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl" xml:lang="en-US">Weighted average number of shares outstanding:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Basic (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Diluted (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl0" xml:lang="en-US">Weighted average common shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_lbl" xml:lang="en-US">Dividends per share: (in Dollars per share)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ComprehensiveIncomeAbstract" xlink:href="esp-20250331.xsd#esp_ComprehensiveIncomeAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ComprehensiveIncomeAbstract_lbl" xml:lang="en-US">Comprehensive income:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract" xlink:to="esp_ComprehensiveIncomeAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax_lbl" xml:lang="en-US">Other comprehensive income (gain), net of tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_lbl" xml:lang="en-US">Other comprehensive income (gain), net of tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xml:lang="en-US">Stock options exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Stock options exercised (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl0" xml:lang="en-US">Number of Shares Subject to Option, Exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xml:lang="en-US">Shares exercised options (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl" xml:lang="en-US">Stock-based compensation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid_lbl" xml:lang="en-US">Dividends paid on common stock per share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ComprehensiveIncomeAbstract0" xlink:href="esp-20250331.xsd#esp_ComprehensiveIncomeAbstract0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ComprehensiveIncomeAbstract0_lbl" xml:lang="en-US">Comprehensive income:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract0" xlink:to="esp_ComprehensiveIncomeAbstract0_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ComprehensiveIncomeAbstract1" xlink:href="esp-20250331.xsd#esp_ComprehensiveIncomeAbstract1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ComprehensiveIncomeAbstract1_lbl" xml:lang="en-US">Comprehensive income:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract1" xlink:to="esp_ComprehensiveIncomeAbstract1_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ComprehensiveIncomeAbstract2" xlink:href="esp-20250331.xsd#esp_ComprehensiveIncomeAbstract2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ComprehensiveIncomeAbstract2_lbl" xml:lang="en-US">Comprehensive income:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract2" xlink:to="esp_ComprehensiveIncomeAbstract2_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Cash Flows from Operating Activities:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Stock-based compensation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Depreciation"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_Depreciation_lbl" xml:lang="en-US">Depreciation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Depreciation" xlink:to="us-gaap_Depreciation_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense_lbl" xml:lang="en-US">ESOP compensation expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income tax benefit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Changes in assets and liabilities:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xml:lang="en-US">Decrease in accounts payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedSalaries"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries_lbl" xml:lang="en-US">Decrease in accrued salaries and wages</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:to="us-gaap_IncreaseDecreaseInAccruedSalaries_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseInVacationAccrual" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseInVacationAccrual"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IncreaseDecreaseInVacationAccrual_lbl" xml:lang="en-US">Increase in vacation accrual</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseDecreaseInVacationAccrual" xlink:to="esp_IncreaseDecreaseInVacationAccrual_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseinESOPPayable" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseinESOPPayable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IncreaseDecreaseinESOPPayable_lbl" xml:lang="en-US">Increase in ESOP payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseDecreaseinESOPPayable" xlink:to="esp_IncreaseDecreaseinESOPPayable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_lbl" xml:lang="en-US">Increase in other accrued expenses</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20250331.xsd#esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl" xml:lang="en-US">Increase in payroll and other taxes withheld</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:to="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xml:lang="en-US">Increase in contract liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xml:lang="en-US">Increase in income taxes payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US">Cash Flows from Investing Activities:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ProceedsFromGrantAward" xlink:href="esp-20250331.xsd#esp_ProceedsFromGrantAward"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ProceedsFromGrantAward_lbl" xml:lang="en-US">Proceeds from grant award</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ProceedsFromGrantAward" xlink:to="esp_ProceedsFromGrantAward_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xml:lang="en-US">Proceeds from sale of property, plant and equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_lbl" xml:lang="en-US">Proceeds from sale/maturity of investment securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US">Cash Flows from Financing Activities:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromRepurchaseOfEquity"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity_lbl" xml:lang="en-US">Proceeds from exercise of stock options</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:to="us-gaap_ProceedsFromRepurchaseOfEquity_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract" xlink:href="esp-20250331.xsd#esp_UnlabeledAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract" xlink:to="esp_UnlabeledAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SupplementalCashFlowElementsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_lbl" xml:lang="en-US">Supplemental Schedule of Cash Flow Information:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_SupplementalCashFlowElementsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl" xml:lang="en-US">Income taxes paid</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedEsopSharesCost" xlink:href="esp-20250331.xsd#esp_UnearnedEsopSharesCost"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="esp_UnearnedEsopSharesCost_lbl" xml:lang="en-US">Less: Unearned ESOP shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnearnedEsopSharesCost" xlink:to="esp_UnearnedEsopSharesCost_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_TreasuryStockValue_lbl" xml:lang="en-US">Cost of 313,316 and 395,916 shares of common stock in treasury as of March 31, 2025 and June 30, 2024, respectively</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DividendsCommonStock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DividendsCommonStock_lbl" xml:lang="en-US">Dividends paid on common stock, per share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStock" xlink:to="us-gaap_DividendsCommonStock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xml:lang="en-US">(Gain) Loss on disposal of property, plant and equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US">Decrease in trade accounts receivable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl" xml:lang="en-US">Decrease in income taxes receivable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Decrease in inventories</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xml:lang="en-US">Increase in prepaid expenses and other current assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Additions to property, plant and equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireInvestments_lbl" xml:lang="en-US">Purchase of investment securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireInvestments" xlink:to="us-gaap_PaymentsToAcquireInvestments_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl" xml:lang="en-US">Dividends on common stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockMember_lbl" xml:lang="en-US">Common Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xml:lang="en-US">Capital in Excess of Par Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xml:lang="en-US">Accumulated Other Comprehensive Gain</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RetainedEarningsMember_lbl" xml:lang="en-US">Retained Earnings</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xml:lang="en-US">Treasury Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedESOPSharesMember" xlink:href="esp-20250331.xsd#esp_UnearnedESOPSharesMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnearnedESOPSharesMember_lbl" xml:lang="en-US">Unearned ESOP Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnearnedESOPSharesMember" xlink:to="esp_UnearnedESOPSharesMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xml:lang="en-US">Basis of Presentation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentTextBlock_lbl" xml:lang="en-US">Investment Securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTextBlock" xlink:to="us-gaap_InvestmentTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock_lbl" xml:lang="en-US">Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TradingSecuritiesDebtAmortizedCost"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost_lbl" xml:lang="en-US">Amortized Cost</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:to="us-gaap_TradingSecuritiesDebtAmortizedCost_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_lbl" xml:lang="en-US">Gross Unrealized Gains</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_June302024Abstract" xlink:href="esp-20250331.xsd#esp_June302024Abstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_June302024Abstract_lbl" xml:lang="en-US">June 30, 2024</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302024Abstract" xlink:to="esp_June302024Abstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl" xml:lang="en-US">Schedule of Contractual Maturities of Available-for-Sale Debt Securities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_lbl" xml:lang="en-US">Less than One Year</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue_lbl" xml:lang="en-US">One to Five Years</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_June302024Abstract0" xlink:href="esp-20250331.xsd#esp_June302024Abstract0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_June302024Abstract0_lbl" xml:lang="en-US">June 30, 2024</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302024Abstract0" xlink:to="esp_June302024Abstract0_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US">Net Income per Share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US">Schedule of Denominators of the Basic and Diluted Earnings Per Share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl" xml:lang="en-US">Numerator:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl" xml:lang="en-US">Basic EPS:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CommonSharesOutstandingBasic" xlink:href="esp-20250331.xsd#esp_CommonSharesOutstandingBasic"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_CommonSharesOutstandingBasic_lbl" xml:lang="en-US">Common shares outstanding, beginning of period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonSharesOutstandingBasic" xlink:to="esp_CommonSharesOutstandingBasic_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_lbl" xml:lang="en-US">Weighted average common shares issued during the period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesIssuedBasic"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic_lbl" xml:lang="en-US">Weighted average ESOP shares earned during the period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesIssuedBasic_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_lbl" xml:lang="en-US">Weighted average common shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:to="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareDilutedAbstract_lbl" xml:lang="en-US">Diluted EPS:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_EarningsPerShareDilutedAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CommonSharesOutstandingDiluted" xlink:href="esp-20250331.xsd#esp_CommonSharesOutstandingDiluted"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_CommonSharesOutstandingDiluted_lbl" xml:lang="en-US">Common shares outstanding, beginning of period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonSharesOutstandingDiluted" xlink:to="esp_CommonSharesOutstandingDiluted_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl" xml:lang="en-US">Weighted average ESOP shares earned during the period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xml:lang="en-US">Weighted average dilutive effect of stock options</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DilutedEpsAbstract" xlink:href="esp-20250331.xsd#esp_DilutedEpsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DilutedEpsAbstract_lbl" xml:lang="en-US">Diluted EPS:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DilutedEpsAbstract" xlink:to="esp_DilutedEpsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xml:lang="en-US">Stock Based Compensation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" xml:lang="en-US">Schedule of Weighted Average Assumptions of Option Award</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl" xml:lang="en-US">Dividend yield</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xml:lang="en-US">Company&#8217;s expected volatility</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xml:lang="en-US">Risk-free interest rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xml:lang="en-US">Expected term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted average fair value per share of options granted during the period (in Dollars per share)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of Stock Option Activity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xml:lang="en-US">Weighted Average Remaining Contractual Term, Ending</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xml:lang="en-US">Number of Shares Subject to Option, Granted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl0" xml:lang="en-US">Weighted Number of Shares Subject to Option, Granted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Granted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" xlink:href="esp-20250331.xsd#esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted_lbl" xml:lang="en-US">Weighted Average Remaining Contractual Term, Granted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" xlink:to="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xlink:href="esp-20250331.xsd#esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm_lbl" xml:lang="en-US">Weighted Average Remaining Contractual Term, Exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Forfeited or expired</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xlink:href="esp-20250331.xsd#esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm_lbl" xml:lang="en-US">Weighted Average Remaining Contractual Term, Forfeited or expired</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl" xml:lang="en-US">Number of Shares Subject to Option, Vested or expected to vest</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Vested or expected to vest</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_lbl" xml:lang="en-US">Weighted Average Remaining Contractual Term, Vested or expected to vest</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl" xml:lang="en-US">Aggregate Intrinsic Value, Vested or expected to vest</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xml:lang="en-US">Number of Shares Subject to Option, Exercisable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Exercisable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xml:lang="en-US">Weighted Average Remaining Contractual Term, Exercisable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl" xml:lang="en-US">Aggregate Intrinsic Value, Exercisable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of Changes in Non-Vested Stock Options</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Average Grant Date Fair Value (per Option), Granted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Average Grant Date Fair Value (per Option), Vested</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Average Grant Date Fair Value (per Option), Forfeited or expired</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xml:lang="en-US">Commitments and Contingencies</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US">Revenue</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xml:lang="en-US">Recently Issued Accounting Standards</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock_lbl" xml:lang="en-US">Employee Stock Ownership Plan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanTextBlock" xlink:to="esp_EmployeeStockOwnershipPlanTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock_lbl" xml:lang="en-US">Schedule of ESOP Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares_lbl" xml:lang="en-US">Allocated shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares_lbl" xml:lang="en-US">Committed-to-be-released shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares_lbl" xml:lang="en-US">Unreleased shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue_lbl" xml:lang="en-US">Fair value of unreleased shares (in Dollars)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl" xml:lang="en-US">Gross Unrealized Losses</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_lbl" xml:lang="en-US">Unearned ESOP shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xml:lang="en-US">Number of Shares Subject to Option, Forfeited or expired</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_lbl" xml:lang="en-US">Weighted Number of Shares Subject to Option, Vested</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_lbl" xml:lang="en-US">Weighted Number of Shares Subject to Option, Forfeited or expired</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CertificatesOfDepositMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CertificatesOfDepositMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CertificatesOfDepositMember_lbl" xml:lang="en-US">Certificates of deposit [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CertificatesOfDepositMember" xlink:to="us-gaap_CertificatesOfDepositMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MunicipalBondsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_MunicipalBondsMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_MunicipalBondsMember_lbl" xml:lang="en-US">Municipal bonds [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MunicipalBondsMember" xlink:to="us-gaap_MunicipalBondsMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_USTreasuryBillSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_USTreasuryBillSecuritiesMember_lbl" xml:lang="en-US">U.S. Treasury bills [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_USTreasuryBillSecuritiesMember" xlink:to="us-gaap_USTreasuryBillSecuritiesMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockOptionMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockOptionMember_lbl" xml:lang="en-US">Equity Option [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockOptionMember" xlink:to="us-gaap_StockOptionMember_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_TitleOfIndividualAxis_lbl" xml:lang="en-US">Title and Position [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PlanNameAxis_lbl" xml:lang="en-US">Plan Name [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Statistical Measurement [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentTypeAxis_lbl" xml:lang="en-US">Investment Type [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementScenarioAxis_lbl" xml:lang="en-US">Scenario [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_StatementScenarioAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl" xml:lang="en-US">Accounting Standards Update [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis_lbl" xml:lang="en-US">Employee Stock Ownership Plan (ESOP) Name [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xml:lang="en-US">Options to purchase shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xml:lang="en-US">Stock-based compensation expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredOtherTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredOtherTaxExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredOtherTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred tax benefit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredOtherTaxExpenseBenefit" xlink:to="us-gaap_DeferredOtherTaxExpenseBenefit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl" xml:lang="en-US">Unrecognized compensation cost</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xml:lang="en-US">Period in which compensation cost will be recognized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease_lbl" xml:lang="en-US">Aggregate number of common stock (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:href="esp-20250331.xsd#esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear_lbl" xml:lang="en-US">Percentage of total number of shares subject to options or awards, single fiscal year</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:to="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xml:lang="en-US">Vesting period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl" xml:lang="en-US">Authorized shares under plan (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xml:lang="en-US">Shares remain available for grant (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:href="esp-20250331.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber_lbl" xml:lang="en-US">Outstanding shares (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DividendPayableAmountPerShare" xlink:href="esp-20250331.xsd#esp_DividendPayableAmountPerShare"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DividendPayableAmountPerShare_lbl" xml:lang="en-US">Dividends per share (in Dollars per share)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DividendPayableAmountPerShare" xlink:to="esp_DividendPayableAmountPerShare_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xml:lang="en-US">Aggregate intrinsic value of options exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LettersOfCreditOutstandingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl" xml:lang="en-US">Contingent liabilities on outstanding standby letters of credit agreements</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LettersOfCreditOutstandingAmount" xlink:to="us-gaap_LettersOfCreditOutstandingAmount_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CustomerFunds" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CustomerFunds"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CustomerFunds_lbl" xml:lang="en-US">Funding amount</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerFunds" xlink:to="us-gaap_CustomerFunds_lbl"/>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XncOfhwynpbLSlg/EHV+wnkBCjYz99GxoVyTdmm5esYO6v4WZiwUdXqbHm3T9lIqBI6ihpM1ztbmPpUOBu6RJYQRhwVY1ieH1g7XlcmlNCUIFKPfhGyXVPC1TQLe/FNpUnR3X3JcQc0H2GSdR7a94So+fdkGZwVXiFfWIfkn2QUZQ==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl" xml:lang="en-US">Deferred tax asset</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xml:lang="en-US">Total deferred tax asset</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xml:lang="en-US">Property, plant, and equipment amount</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsPayableCurrentAndNoncurrent_lbl" xml:lang="en-US">Accounts payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:to="us-gaap_AccountsPayableCurrentAndNoncurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_TerminationWithdrawalObligation" xlink:href="esp-20250331.xsd#esp_TerminationWithdrawalObligation"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_TerminationWithdrawalObligation_lbl" xml:lang="en-US">Termination withdrawal obligation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TerminationWithdrawalObligation" xlink:to="esp_TerminationWithdrawalObligation_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiability"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ContractWithCustomerLiability_lbl" xml:lang="en-US">Contract liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xml:lang="en-US">Revenue recognized contract liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ContractTerm" xlink:href="esp-20250331.xsd#esp_ContractTerm"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ContractTerm_lbl" xml:lang="en-US">Contract term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ContractTerm" xlink:to="esp_ContractTerm_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Intangible assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearOne" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearOne"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_BacklogPercentageOfRecognitionsYearOne_lbl" xml:lang="en-US">Backlog amount to be recognized, 2025</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearOne" xlink:to="esp_BacklogPercentageOfRecognitionsYearOne_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearTwo" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearTwo"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_BacklogPercentageOfRecognitionsYearTwo_lbl" xml:lang="en-US">Backlog amount to be recognized, 2026</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearTwo" xlink:to="esp_BacklogPercentageOfRecognitionsYearTwo_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearThree" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearThree"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_BacklogPercentageOfRecognitionsYearThree_lbl" xml:lang="en-US">Backlog amount to be recognized, 2027</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearThree" xlink:to="esp_BacklogPercentageOfRecognitionsYearThree_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitions" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitions"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_BacklogPercentageOfRecognitions_lbl" xml:lang="en-US">Backlog amount to be recognized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitions" xlink:to="esp_BacklogPercentageOfRecognitions_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanHoursWorked" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanHoursWorked"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_EmployeeStockOwnershipPlanHoursWorked_lbl" xml:lang="en-US">Number of hours worked per year to qualify for the plan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanHoursWorked" xlink:to="esp_EmployeeStockOwnershipPlanHoursWorked_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan_lbl" xml:lang="en-US">Shares distributed (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_NonQualifiedStockOptionsMember" xlink:href="esp-20250331.xsd#esp_NonQualifiedStockOptionsMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NonQualifiedStockOptionsMember_lbl" xml:lang="en-US">Non-qualified Stock Options [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonQualifiedStockOptionsMember" xlink:to="esp_NonQualifiedStockOptionsMember_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="esp_NonQualifiedStockOptionsMember_lbl0" xml:lang="en-US">Non-qualified stock options [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonQualifiedStockOptionsMember" xlink:to="esp_NonQualifiedStockOptionsMember_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_IncentiveStockOptionMember" xlink:href="esp-20250331.xsd#esp_IncentiveStockOptionMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IncentiveStockOptionMember_lbl" xml:lang="en-US">Incentive Stock Options [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncentiveStockOptionMember" xlink:to="esp_IncentiveStockOptionMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_NonEmployeeDirectorsMember" xlink:href="esp-20250331.xsd#esp_NonEmployeeDirectorsMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NonEmployeeDirectorsMember_lbl" xml:lang="en-US">Non-Employee Directors [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonEmployeeDirectorsMember" xlink:to="esp_NonEmployeeDirectorsMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_TwoThousandSeventeenPlanMember" xlink:href="esp-20250331.xsd#esp_TwoThousandSeventeenPlanMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_TwoThousandSeventeenPlanMember_lbl" xml:lang="en-US">2017 Plan [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSeventeenPlanMember" xlink:to="esp_TwoThousandSeventeenPlanMember_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_MaximumMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_IndividualEmployeeMember" xlink:href="esp-20250331.xsd#esp_IndividualEmployeeMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IndividualEmployeeMember_lbl" xml:lang="en-US">Individual Employee [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IndividualEmployeeMember" xlink:to="esp_IndividualEmployeeMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOptionMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EmployeeStockOptionMember_lbl" xml:lang="en-US">Stock Options [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_RestrictedStockPlanMember" xlink:href="esp-20250331.xsd#esp_RestrictedStockPlanMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_RestrictedStockPlanMember_lbl" xml:lang="en-US">Restricted Stock Plan [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RestrictedStockPlanMember" xlink:to="esp_RestrictedStockPlanMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_TwoThousandSevenPlanMember" xlink:href="esp-20250331.xsd#esp_TwoThousandSevenPlanMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_TwoThousandSevenPlanMember_lbl" xml:lang="en-US">2007 Plan [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSevenPlanMember" xlink:to="esp_TwoThousandSevenPlanMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_NavysInvestmentMember" xlink:href="esp-20250331.xsd#esp_NavysInvestmentMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NavysInvestmentMember_lbl" xml:lang="en-US">Navy&#8217;s Investment [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NavysInvestmentMember" xlink:to="esp_NavysInvestmentMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnitsDeliveredMember" xlink:href="esp-20250331.xsd#esp_UnitsDeliveredMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnitsDeliveredMember_lbl" xml:lang="en-US">Units Delivered [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnitsDeliveredMember" xlink:to="esp_UnitsDeliveredMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ASC606Member" xlink:href="esp-20250331.xsd#esp_ASC606Member"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ASC606Member_lbl" xml:lang="en-US">ASC 606 [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ASC606Member" xlink:to="esp_ASC606Member_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_MilestonesAchievedMember" xlink:href="esp-20250331.xsd#esp_MilestonesAchievedMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_MilestonesAchievedMember_lbl" xml:lang="en-US">Milestones Achieved [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_MilestonesAchievedMember" xlink:to="esp_MilestonesAchievedMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OrderOrProductionBacklogMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OrderOrProductionBacklogMember_lbl" xml:lang="en-US">Order or Production Backlog [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrderOrProductionBacklogMember" xlink:to="us-gaap_OrderOrProductionBacklogMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanMember" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_EmployeeStockOwnershipPlanMember_lbl" xml:lang="en-US">Employee Stock Ownership Plan [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanMember" xlink:to="esp_EmployeeStockOwnershipPlanMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityComponentDomain_lbl" xml:lang="en-US">Equity Component [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementTable_lbl" xml:lang="en-US">Statement [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementLineItems_lbl" xml:lang="en-US">Statement [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_lbl" xml:lang="en-US">Financial Instruments [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable_lbl" xml:lang="en-US">Debt Securities, Available-for-Sale [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems_lbl" xml:lang="en-US">Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_ScheduleOfInvestmentsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:href="esp-20250331.xsd#esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable_lbl" xml:lang="en-US">Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:to="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_lbl" xml:lang="en-US">Schedule of Contractual Maturities of Available-for-Sale Debt Securities [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl" xml:lang="en-US">Award Type [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:href="esp-20250331.xsd#esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable_lbl" xml:lang="en-US">Stock Based Compensation - Schedule of Stock Option Activity (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:to="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl0" xml:lang="en-US">Schedule of Stock Option Activity [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl0"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeMember_lbl" xml:lang="en-US">Statistical Measurement [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PlanNameDomain_lbl" xml:lang="en-US">Plan Name [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_lbl" xml:lang="en-US">Title and Position [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsTable" xlink:href="esp-20250331.xsd#esp_StockBasedCompensationDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsTable_lbl" xml:lang="en-US">Stock Based Compensation (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationDetailsTable" xlink:to="esp_StockBasedCompensationDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_lbl" xml:lang="en-US">Stock Based Compensation [Line Item]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentTypeCategorizationMember_lbl" xml:lang="en-US">Investments [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTypeCategorizationMember" xlink:to="us-gaap_InvestmentTypeCategorizationMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CommitmentsandContingenciesDetailsTable" xlink:href="esp-20250331.xsd#esp_CommitmentsandContingenciesDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_CommitmentsandContingenciesDetailsTable_lbl" xml:lang="en-US">Commitments and Contingencies (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommitmentsandContingenciesDetailsTable" xlink:to="esp_CommitmentsandContingenciesDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherCommitmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherCommitmentsLineItems_lbl" xml:lang="en-US">Commitments and Contingencies [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_OtherCommitmentsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TypeOfAdoptionMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TypeOfAdoptionMember_lbl" xml:lang="en-US">Accounting Standards Update [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_TypeOfAdoptionMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScenarioUnspecifiedDomain_lbl" xml:lang="en-US">Scenario [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioUnspecifiedDomain" xlink:to="srt_ScenarioUnspecifiedDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_RevenueDetailsTable" xlink:href="esp-20250331.xsd#esp_RevenueDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_RevenueDetailsTable_lbl" xml:lang="en-US">Revenue (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RevenueDetailsTable" xlink:to="esp_RevenueDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xml:lang="en-US">Revenue [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain_lbl" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Plan [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanDetailsTable_lbl" xml:lang="en-US">Employee Stock Ownership Plan (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanDetailsTable" xlink:to="esp_EmployeeStockOwnershipPlanDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems_lbl" xml:lang="en-US">Employee Stock Ownership Plan [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_BacklogPercentageOfRecognitions_lbl0" xml:lang="en-US">The percentage of backlog that will be recognized within three years of the operating cycle.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitions" xlink:to="esp_BacklogPercentageOfRecognitions_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_BacklogPercentageOfRecognitionsYearOne_lbl0" xml:lang="en-US">The percentage of backlog that will be recognized within one year of the operating cycle.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearOne" xlink:to="esp_BacklogPercentageOfRecognitionsYearOne_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_BacklogPercentageOfRecognitionsYearThree_lbl0" xml:lang="en-US">The percentage of backlog that will be recognized within two years of the operating cycle.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearThree" xlink:to="esp_BacklogPercentageOfRecognitionsYearThree_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_BacklogPercentageOfRecognitionsYearTwo_lbl0" xml:lang="en-US">The percentage of backlog that will be recognized within two years of the operating cycle.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearTwo" xlink:to="esp_BacklogPercentageOfRecognitionsYearTwo_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_CommonSharesOutstandingBasic_lbl0" xml:lang="en-US">Common shares outstanding, beginning of period.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonSharesOutstandingBasic" xlink:to="esp_CommonSharesOutstandingBasic_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_CommonSharesOutstandingDiluted_lbl0" xml:lang="en-US">Common shares outstanding, beginning of period.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonSharesOutstandingDiluted" xlink:to="esp_CommonSharesOutstandingDiluted_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ContractTerm_lbl0" xml:lang="en-US">Contract term.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ContractTerm" xlink:to="esp_ContractTerm_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DeferredTaxAssetsCurrent_lbl0" xml:lang="en-US">Deferred tax assets as of the balance sheet date.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetsCurrent" xlink:to="esp_DeferredTaxAssetsCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DividendPayableAmountPerShare_lbl0" xml:lang="en-US">The per share amount of a dividend declared, and paid.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DividendPayableAmountPerShare" xlink:to="esp_DividendPayableAmountPerShare_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_EmployeeStockOwnershipPlanHoursWorked_lbl0" xml:lang="en-US">Minimum number of hours worked per year for nonunion employees to participate in ESOP.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanHoursWorked" xlink:to="esp_EmployeeStockOwnershipPlanHoursWorked_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock_lbl0" xml:lang="en-US">The entire disclosure for employee stock ownership plan.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanTextBlock" xlink:to="esp_EmployeeStockOwnershipPlanTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_IncreaseDecreaseInVacationAccrual_lbl0" xml:lang="en-US">The increase (decrease) in vacation accrual for the period.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseDecreaseInVacationAccrual" xlink:to="esp_IncreaseDecreaseInVacationAccrual_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_IncreaseDecreaseinESOPPayable_lbl0" xml:lang="en-US">Increase (Decrease) in employee stock ownership plan payable amount.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseDecreaseinESOPPayable" xlink:to="esp_IncreaseDecreaseinESOPPayable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl0" xml:lang="en-US">Increase (decrease) in payroll and other taxes withheld.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:to="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear_lbl0" xml:lang="en-US">Percentage of total number of shares subject to options or awards, single fiscal year.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:to="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ProceedsFromGrantAward_lbl0" xml:lang="en-US">Proceeds from grant award.&#xd;
.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ProceedsFromGrantAward" xlink:to="esp_ProceedsFromGrantAward_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber_lbl0" xml:lang="en-US">Number of options outstanding, including both vested and non-vested options.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm_lbl0" xml:lang="en-US">Represent the weighted average remaining contractual term, Exercised.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm_lbl0" xml:lang="en-US">Represent the weighted average remaining contractual term, Forfeited or expired.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_TerminationWithdrawalObligation_lbl0" xml:lang="en-US">Amount of Termination withdrawal obligation.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TerminationWithdrawalObligation" xlink:to="esp_TerminationWithdrawalObligation_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock_lbl0" xml:lang="en-US">Total of all stockholders&apos; equity (deficit) items, before ESOP and Treasury stock.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_UnearnedEsopSharesCost_lbl0" xml:lang="en-US">Unearned ESOP shares.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnearnedEsopSharesCost" xlink:to="esp_UnearnedEsopSharesCost_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted_lbl0" xml:lang="en-US">Represent the weighted average remaining contractual term, Granted.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" xlink:to="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ASC606Member_lbl0" xml:lang="en-US">ASC 606 [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ASC606Member" xlink:to="esp_ASC606Member_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_EmployeeStockOwnershipPlanMember_lbl0" xml:lang="en-US">Information by name of employee stock ownership plan.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanMember" xlink:to="esp_EmployeeStockOwnershipPlanMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_IncentiveStockOptionMember_lbl0" xml:lang="en-US">Incentive Stock Options [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncentiveStockOptionMember" xlink:to="esp_IncentiveStockOptionMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_IndividualEmployeeMember_lbl0" xml:lang="en-US">Individual Employee [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IndividualEmployeeMember" xlink:to="esp_IndividualEmployeeMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_MilestonesAchievedMember_lbl0" xml:lang="en-US">Units Delivered [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_MilestonesAchievedMember" xlink:to="esp_MilestonesAchievedMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_NonEmployeeDirectorsMember_lbl0" xml:lang="en-US">Non employee directors [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonEmployeeDirectorsMember" xlink:to="esp_NonEmployeeDirectorsMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_NonQualifiedStockOptionsMember_lbl1" xml:lang="en-US">Non-qualified stock options [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonQualifiedStockOptionsMember" xlink:to="esp_NonQualifiedStockOptionsMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_TwoThousandSevenPlanMember_lbl0" xml:lang="en-US">Name of the equity-based compensation arrangement plan.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSevenPlanMember" xlink:to="esp_TwoThousandSevenPlanMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_TwoThousandSeventeenPlanMember_lbl0" xml:lang="en-US">2017 Plan [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSeventeenPlanMember" xlink:to="esp_TwoThousandSeventeenPlanMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_UnearnedESOPSharesMember_lbl0" xml:lang="en-US">Information pertaining to unearned employee stock ownership plan shares.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnearnedESOPSharesMember" xlink:to="esp_UnearnedESOPSharesMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_UnitsDeliveredMember_lbl0" xml:lang="en-US">Units Delivered [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnitsDeliveredMember" xlink:to="esp_UnitsDeliveredMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl0" xml:lang="en-US">Income Taxes Paid, Net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Volatility Rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl0" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl0" xml:lang="en-US">Deferred Tax Assets, Net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl0" xml:lang="en-US">Earnings Per Share, Diluted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl1" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DividendPayableAmountPerShare_lbl1" xml:lang="en-US">Dividend Payable Amount Per Share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DividendPayableAmountPerShare" xlink:to="esp_DividendPayableAmountPerShare_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockValue_lbl0" xml:lang="en-US">Common Stock, Value, Issued</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl0" xml:lang="en-US">Nonoperating Income (Expense) [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsMember_lbl0" xml:lang="en-US">Retained Earnings [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm_lbl1" xml:lang="en-US">Sharebased Compensation Arrangement By Sharebased Payment Award Options Forfeited And Expired Weighted Average Remaining Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAbstract_lbl0" xml:lang="en-US">Assets [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl0" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnearnedEsopSharesCost_lbl1" xml:lang="en-US">Unearned Esop Shares Cost</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnearnedEsopSharesCost" xlink:to="esp_UnearnedEsopSharesCost_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredOtherTaxExpenseBenefit_lbl0" xml:lang="en-US">Deferred Other Tax Expense (Benefit)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredOtherTaxExpenseBenefit" xlink:to="us-gaap_DeferredOtherTaxExpenseBenefit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl0" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_lbl0" xml:lang="en-US">OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_June302024Abstract0_lbl0" xml:lang="en-US">June302024 Abstract0</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302024Abstract0" xlink:to="esp_June302024Abstract0_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DeferredTaxAssetsCurrent_lbl1" xml:lang="en-US">Deferred Tax Assets Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetsCurrent" xlink:to="esp_DeferredTaxAssetsCurrent_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedVacationCurrent_lbl0" xml:lang="en-US">Accrued Vacation, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedVacationCurrent" xlink:to="us-gaap_AccruedVacationCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm_lbl1" xml:lang="en-US">Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercised Weighted Average Remaining Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xlink:to="esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl0" xml:lang="en-US">Investments Classified by Contractual Maturity Date [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xml:lang="en-US">Statement of Stockholders&apos; Equity [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerFunds_lbl0" xml:lang="en-US">Customer Funds</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerFunds" xlink:to="us-gaap_CustomerFunds_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Shares in ESOP</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfStockOptionActivityAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfStockOptionActivityAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfStockOptionActivityAbstract_lbl" xml:lang="en-US">Schedule Of Stock Option Activity Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfStockOptionActivityAbstract" xlink:to="esp_ScheduleOfStockOptionActivityAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl0" xml:lang="en-US">Income Tax Expense (Benefit)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl0" xml:lang="en-US">Deferred Tax Assets, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock_lbl1" xml:lang="en-US">Employee Stock Ownership Plan Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanTextBlock" xlink:to="esp_EmployeeStockOwnershipPlanTextBlock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl0" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_IndividualEmployeeMember_lbl1" xml:lang="en-US">Individual Employee Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IndividualEmployeeMember" xlink:to="esp_IndividualEmployeeMember_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xml:lang="en-US">Income Statement [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_lbl0" xml:lang="en-US">Common Stock, Dividends, Per Share, Declared</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentIncomeInterest_lbl0" xml:lang="en-US">Investment Income, Interest</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeInterest" xlink:to="us-gaap_InvestmentIncomeInterest_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Number of Suspense Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_lbl0" xml:lang="en-US">Weighted Average Number of Shares, Employee Stock Ownership Plan Shares Not Committed to be Released</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryRawMaterials_lbl0" xml:lang="en-US">Inventory, Raw Materials, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterials" xlink:to="us-gaap_InventoryRawMaterials_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ASC606Member_lbl1" xml:lang="en-US">ASC606 Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ASC606Member" xlink:to="esp_ASC606Member_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl0" xml:lang="en-US">Earnings Per Share, Basic</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ProceedsFromGrantAward_lbl1" xml:lang="en-US">Proceeds From Grant Award</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ProceedsFromGrantAward" xlink:to="esp_ProceedsFromGrantAward_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireInvestments_lbl0" xml:lang="en-US">Payments to Acquire Investments</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireInvestments" xlink:to="us-gaap_PaymentsToAcquireInvestments_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_lbl0" xml:lang="en-US">Assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_lbl0" xml:lang="en-US">Liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockValue_lbl0" xml:lang="en-US">Treasury Stock, Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_CommonSharesOutstandingDiluted_lbl1" xml:lang="en-US">Common Shares Outstanding Diluted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonSharesOutstandingDiluted" xlink:to="esp_CommonSharesOutstandingDiluted_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl0" xml:lang="en-US">Earnings Per Share, Basic [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity_lbl0" xml:lang="en-US">Proceeds from (Repurchase of) Equity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:to="us-gaap_ProceedsFromRepurchaseOfEquity_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DilutedEpsAbstract_lbl0" xml:lang="en-US">Diluted Eps Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DilutedEpsAbstract" xlink:to="esp_DilutedEpsAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl0" xml:lang="en-US">Cash Provided by (Used in) Operating Activity, Including Discontinued Operation [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Depreciation_lbl0" xml:lang="en-US">Depreciation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Depreciation" xlink:to="us-gaap_Depreciation_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_NonEmployeeDirectorsMember_lbl1" xml:lang="en-US">Non Employee Directors Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonEmployeeDirectorsMember" xlink:to="esp_NonEmployeeDirectorsMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted_lbl1" xml:lang="en-US">Weighted Average Remaining Contr Sharebased Compensation Arrangement By Sharebased Payment Award Options Granted Weighted Average Remaining Contractual Termactual Term Granted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" xlink:to="esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl2" xml:lang="en-US">Common Stock, Shares, Outstanding</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentTextBlock_lbl0" xml:lang="en-US">Investment [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTextBlock" xlink:to="us-gaap_InvestmentTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl0" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Period Increase (Decrease), Excluding Exchange Rate Effect, Including Discontinued Operation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl0" xml:lang="en-US">Cash Provided by (Used in) Investing Activity, Including Discontinued Operation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost_lbl0" xml:lang="en-US">Debt Securities, Trading, Amortized Cost</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:to="us-gaap_TradingSecuritiesDebtAmortizedCost_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl0" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid_lbl0" xml:lang="en-US">Common Stock, Dividends, Per Share, Cash Paid</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl0" xml:lang="en-US">Prepaid Expense and Other Assets, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl0" xml:lang="en-US">Additional Paid in Capital, Common Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl0" xml:lang="en-US">Payments of Ordinary Dividends, Common Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl0" xml:lang="en-US">Business Description and Basis of Presentation [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl0" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableCurrent_lbl0" xml:lang="en-US">Accounts Payable, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent_lbl0" xml:lang="en-US">Accrued Employee Benefits, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock_lbl1" xml:lang="en-US">Total Stockholders Equity Befory Esop And Treasury Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockCommonMember_lbl0" xml:lang="en-US">Treasury Stock, Common [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl0" xml:lang="en-US">Net Income (Loss) Available to Common Stockholders, Basic [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl0" xml:lang="en-US">Cash Provided by (Used in) Financing Activity, Including Discontinued Operation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Number of Shares, Period Increase (Decrease)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanMember_lbl1" xml:lang="en-US">Employee Stock Ownership Plan Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanMember" xlink:to="esp_EmployeeStockOwnershipPlanMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl0" xml:lang="en-US">Property, Plant and Equipment, Net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl0" xml:lang="en-US">Common Stock, Shares Authorized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl0" xml:lang="en-US">Property, Plant and Equipment, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableCurrentAndNoncurrent_lbl0" xml:lang="en-US">Accounts Payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:to="us-gaap_AccountsPayableCurrentAndNoncurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MaximumMember_lbl0" xml:lang="en-US">Maximum [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl0" xml:lang="en-US">Revenue from Contract with Customer, Including Assessed Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ContractTerm_lbl1" xml:lang="en-US">Contract Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ContractTerm" xlink:to="esp_ContractTerm_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl0" xml:lang="en-US">Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Increase (Decrease) in Operating Capital [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_lbl0" xml:lang="en-US">Operating Income (Loss)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries_lbl0" xml:lang="en-US">Increase (Decrease) in Accrued Salaries</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:to="us-gaap_IncreaseDecreaseInAccruedSalaries_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_NonQualifiedStockOptionsMember_lbl2" xml:lang="en-US">Non Qualified Stock Options Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NonQualifiedStockOptionsMember" xlink:to="esp_NonQualifiedStockOptionsMember_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedSalariesCurrent_lbl0" xml:lang="en-US">Accrued Salaries, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedSalariesCurrent" xlink:to="us-gaap_AccruedSalariesCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl0" xml:lang="en-US">Additional Paid-in Capital [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl0" xml:lang="en-US">Cash Provided by (Used in) Financing Activity, Including Discontinued Operation [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_MilestonesAchievedMember_lbl1" xml:lang="en-US">Milestones Achieved Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_MilestonesAchievedMember" xlink:to="esp_MilestonesAchievedMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiability_lbl0" xml:lang="en-US">Contract with Customer, Liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsCommonStock_lbl0" xml:lang="en-US">Dividends, Common Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStock" xlink:to="us-gaap_DividendsCommonStock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Compensation Expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockMember_lbl0" xml:lang="en-US">Common Stock [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl0" xml:lang="en-US">Schedule of Nonvested Share Activity [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CertificatesOfDepositMember_lbl0" xml:lang="en-US">Certificates of Deposit [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CertificatesOfDepositMember" xlink:to="us-gaap_CertificatesOfDepositMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl0" xml:lang="en-US">Cash Provided by (Used in) Investing Activity, Including Discontinued Operation [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl1" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_lbl0" xml:lang="en-US">Increase (Decrease) in Other Accrued Liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ComprehensiveIncomeAbstract_lbl0" xml:lang="en-US">Comprehensive Income Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract" xlink:to="esp_ComprehensiveIncomeAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl0" xml:lang="en-US">Increase (Decrease) in Inventories</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl0" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_lbl0" xml:lang="en-US">Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue_lbl0" xml:lang="en-US">Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, after Year One Through Five</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TaxesPayableCurrent_lbl0" xml:lang="en-US">Taxes Payable, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingencies_lbl0" xml:lang="en-US">Commitments and Contingencies</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Number of Allocated Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl0" xml:lang="en-US">Gain (Loss) on Disposition of Property Plant Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_CommonSharesOutstandingBasic_lbl1" xml:lang="en-US">Common Shares Outstanding Basic</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonSharesOutstandingBasic" xlink:to="esp_CommonSharesOutstandingBasic_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl0" xml:lang="en-US">AOCI Attributable to Parent [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber_lbl1" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Option Outstanding Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US">Statement of Cash Flows [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl0" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_lbl0" xml:lang="en-US">Proceeds from Sale and Maturity of Debt Securities, Available-for-Sale</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic_lbl0" xml:lang="en-US">Weighted Average Number of Shares Issued, Basic</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesIssuedBasic_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract_lbl" xml:lang="en-US">Schedule Of Contractual Maturities Of Available For Sale Debt Securities Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract" xlink:to="esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl0" xml:lang="en-US">Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_TwoThousandSeventeenPlanMember_lbl1" xml:lang="en-US">Two Thousand Seventeen Plan Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSeventeenPlanMember" xlink:to="esp_TwoThousandSeventeenPlanMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl0" xml:lang="en-US">Letters of Credit Outstanding, Amount</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LettersOfCreditOutstandingAmount" xlink:to="us-gaap_LettersOfCreditOutstandingAmount_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl2" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl0" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl0" xml:lang="en-US">Selling, General and Administrative Expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanHoursWorked_lbl1" xml:lang="en-US">Employee Stock Ownership Plan Hours Worked</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanHoursWorked" xlink:to="esp_EmployeeStockOwnershipPlanHoursWorked_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockOptionMember_lbl0" xml:lang="en-US">Equity Option [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockOptionMember" xlink:to="us-gaap_StockOptionMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesHeldInEmployeeTrustShares_lbl0" xml:lang="en-US">Common Stock, Shares Held in Employee Trust, Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" xlink:to="us-gaap_CommonStockSharesHeldInEmployeeTrustShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_IncreaseDecreaseInVacationAccrual_lbl1" xml:lang="en-US">Increase Decrease In Vacation Accrual</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseDecreaseInVacationAccrual" xlink:to="esp_IncreaseDecreaseInVacationAccrual_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Number of Committed-to-be-Released Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl0" xml:lang="en-US">Cash Provided by (Used in) Operating Activity, Including Discontinued Operation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_IncentiveStockOptionMember_lbl1" xml:lang="en-US">Incentive Stock Option Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncentiveStockOptionMember" xlink:to="esp_IncentiveStockOptionMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_BacklogPercentageOfRecognitionsYearThree_lbl1" xml:lang="en-US">Backlog Percentage Of Recognitions Year Three</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearThree" xlink:to="esp_BacklogPercentageOfRecognitionsYearThree_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedPayrollTaxesCurrent_lbl0" xml:lang="en-US">Accrued Payroll Taxes, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedPayrollTaxesCurrent" xlink:to="us-gaap_AccruedPayrollTaxesCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_lbl0" xml:lang="en-US">Other Employee-related Liabilities, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl0" xml:lang="en-US">Share-Based Payment Arrangement [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnearnedESOPSharesMember_lbl1" xml:lang="en-US">Unearned ESOPShares Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnearnedESOPSharesMember" xlink:to="esp_UnearnedESOPSharesMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl0" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MunicipalBondsMember_lbl0" xml:lang="en-US">Municipal Bonds [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MunicipalBondsMember" xlink:to="us-gaap_MunicipalBondsMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_lbl0" xml:lang="en-US">Supplemental Cash Flow Elements [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_SupplementalCashFlowElementsAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_lbl2" xml:lang="en-US">Equity, Attributable to Parent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_lbl0" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Ownership Plan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear_lbl1" xml:lang="en-US">Percentage Of Total Number Of Shares Subject To Options Or Awards Single Fiscal Year</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:to="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl1" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl0" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax_lbl0" xml:lang="en-US">Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss) Arising During Period, after Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Revenues_lbl1" xml:lang="en-US">Revenues</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_lbl0" xml:lang="en-US">Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl0" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl0" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockCommonShares_lbl2" xml:lang="en-US">Treasury Stock, Common, Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl2" xml:lang="en-US">Debt Securities, Available-for-Sale, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl0" xml:lang="en-US">Earnings Per Share [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl1" xml:lang="en-US">Increasedecrease In Payroll And Other Taxes Withheld</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:to="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock_lbl0" xml:lang="en-US">Debt Securities, Available-for-Sale [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl0" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl0" xml:lang="en-US">Contract with Customer, Liability, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl0" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract_lbl0" xml:lang="en-US">Unlabeled Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract" xlink:to="esp_UnlabeledAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_RestrictedStockPlanMember_lbl0" xml:lang="en-US">Restricted Stock Plan Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RestrictedStockPlanMember" xlink:to="esp_RestrictedStockPlanMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_NavysInvestmentMember_lbl0" xml:lang="en-US">Navys Investment Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NavysInvestmentMember" xlink:to="esp_NavysInvestmentMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNetAbstract_lbl0" xml:lang="en-US">Inventory, Net [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNetAbstract" xlink:to="us-gaap_InventoryNetAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_TwoThousandSevenPlanMember_lbl1" xml:lang="en-US">Two Thousand Seven Plan Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSevenPlanMember" xlink:to="esp_TwoThousandSevenPlanMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesIssued_lbl0" xml:lang="en-US">Common Stock, Shares, Issued</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl0" xml:lang="en-US">Increase (Decrease) in Income Taxes Receivable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ComprehensiveIncomeAbstract0_lbl0" xml:lang="en-US">Comprehensive Income Abstract0</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract0" xlink:to="esp_ComprehensiveIncomeAbstract0_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_lbl0" xml:lang="en-US">Gross Profit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl0" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl0" xml:lang="en-US">Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ComprehensiveIncomeAbstract2_lbl0" xml:lang="en-US">Comprehensive Income Abstract2</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract2" xlink:to="esp_ComprehensiveIncomeAbstract2_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl0" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ComprehensiveIncomeAbstract1_lbl0" xml:lang="en-US">Comprehensive Income Abstract1</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ComprehensiveIncomeAbstract1" xlink:to="esp_ComprehensiveIncomeAbstract1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan_lbl0" xml:lang="en-US">Stock Issued During Period, Shares, Employee Benefit Plan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl0" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_TerminationWithdrawalObligation_lbl1" xml:lang="en-US">Termination Withdrawal Obligation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TerminationWithdrawalObligation" xlink:to="esp_TerminationWithdrawalObligation_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl0" xml:lang="en-US">Cash and Cash Equivalent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_IncreaseDecreaseinESOPPayable_lbl1" xml:lang="en-US">Increase Decreasein ESOPPayable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseDecreaseinESOPPayable" xlink:to="esp_IncreaseDecreaseinESOPPayable_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_BacklogPercentageOfRecognitionsYearOne_lbl1" xml:lang="en-US">Backlog Percentage Of Recognitions Year One</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearOne" xlink:to="esp_BacklogPercentageOfRecognitionsYearOne_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_lbl0" xml:lang="en-US">OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryWorkInProcess_lbl0" xml:lang="en-US">Inventory, Work in Process, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Deferred Shares, Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl0" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_BacklogPercentageOfRecognitions_lbl1" xml:lang="en-US">Backlog Percentage Of Recognitions</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitions" xlink:to="esp_BacklogPercentageOfRecognitions_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_lbl0" xml:lang="en-US">Liabilities, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_BacklogPercentageOfRecognitionsYearTwo_lbl1" xml:lang="en-US">Backlog Percentage Of Recognitions Year Two</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearTwo" xlink:to="esp_BacklogPercentageOfRecognitionsYearTwo_lbl1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US">Statement of Financial Position [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl0" xml:lang="en-US">Increase (Decrease) in Accounts Payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OrderOrProductionBacklogMember_lbl0" xml:lang="en-US">Order or Production Backlog [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrderOrProductionBacklogMember" xlink:to="us-gaap_OrderOrProductionBacklogMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl0" xml:lang="en-US">Proceeds from Sale of Property, Plant, and Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Continuing Operation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract_lbl" xml:lang="en-US">Schedule Of Denominators Of The Basic And Diluted Earnings Per Share Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract_lbl" xml:lang="en-US">Schedule Of Cost Gross Unrealized Gains Gross Unrealized Losses And Fair Value Of Available For Sale Debt Securities Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract" xlink:to="esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl0" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl0" xml:lang="en-US">APIC, Share-Based Payment Arrangement, Option, Increase for Cost Recognition</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl0" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnitsDeliveredMember_lbl1" xml:lang="en-US">Units Delivered Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnitsDeliveredMember" xlink:to="esp_UnitsDeliveredMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfRevenue_lbl0" xml:lang="en-US">Cost of Revenue</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl0" xml:lang="en-US">Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms_lbl0" xml:lang="en-US">Inventory for Long-Term Contracts or Programs, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl0" xml:lang="en-US">Liabilities and Equity [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl0" xml:lang="en-US">Finite-Lived Intangible Assets, Net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract_lbl0" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrentAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl0" xml:lang="en-US">Liabilities and Equity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensation_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl0" xml:lang="en-US">Nonoperating Income (Expense)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherNonoperatingIncome_lbl0" xml:lang="en-US">Other Nonoperating Income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncome" xlink:to="us-gaap_OtherNonoperatingIncome_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP) Disclosures [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDilutedAbstract_lbl0" xml:lang="en-US">Earnings Per Share, Diluted [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_EarningsPerShareDilutedAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl0" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted, Adjustment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_USTreasuryBillSecuritiesMember_lbl0" xml:lang="en-US">US Treasury Bill Securities [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_USTreasuryBillSecuritiesMember" xlink:to="us-gaap_USTreasuryBillSecuritiesMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_lbl0" xml:lang="en-US">Weighted Average Number of Shares, Common Stock Subject to Repurchase or Cancellation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:to="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl0" xml:lang="en-US">Increase (Decrease) in Income Taxes Payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNet_lbl0" xml:lang="en-US">Inventory, Net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_June302024Abstract_lbl0" xml:lang="en-US">June302024 Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302024Abstract" xlink:to="esp_June302024Abstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_lbl0" xml:lang="en-US">Assets, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl0"/>
  </labelLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>11
<FILENAME>esp-20250331_pre.xml
<DESCRIPTION>XBRL PRESENTATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Mon May 12 18:57:27 UTC 2025 -->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedBalanceSheet_Parentheticals" roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StatementsofChangesinStockholdersEquityUnauditedTable" roleURI="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals" roleURI="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_BasisofPresentation" roleURI="http://espey.com/role/BasisofPresentation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_InvestmentSecurities" roleURI="http://espey.com/role/InvestmentSecurities"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_NetIncomePerShare" roleURI="http://espey.com/role/NetIncomePerShare"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StockBasedCompensation" roleURI="http://espey.com/role/StockBasedCompensation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_CommitmentsandContingencies" roleURI="http://espey.com/role/CommitmentsandContingencies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_Revenue" roleURI="http://espey.com/role/Revenue"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_RecentlyIssuedAccountingStandards" roleURI="http://espey.com/role/RecentlyIssuedAccountingStandards"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_EmployeeStockOwnershipPlan" roleURI="http://espey.com/role/EmployeeStockOwnershipPlan"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_InvestmentSecuritiesTables" roleURI="http://espey.com/role/InvestmentSecuritiesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_NetIncomePerShareTables" roleURI="http://espey.com/role/NetIncomePerShareTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StockBasedCompensationTables" roleURI="http://espey.com/role/StockBasedCompensationTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_EmployeeStockOwnershipPlanTables" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" roleURI="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofWeightedAverageAssumptionsofOptionAwardTable" roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofStockOptionActivityTable" roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofChangesinNonVestedStockOptionsTable" roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_NetIncomePerShareDetails" roleURI="http://espey.com/role/NetIncomePerShareDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_StockBasedCompensationDetails" roleURI="http://espey.com/role/StockBasedCompensationDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_CommitmentsandContingenciesDetails" roleURI="http://espey.com/role/CommitmentsandContingenciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_RevenueDetails" roleURI="http://espey.com/role/RevenueDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20250331.xsd#esp_r_EmployeeStockOwnershipPlanDetails" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanDetails"/>
  <roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#cover" roleURI="http://xbrl.sec.gov/dei/role/document/Cover"/>
  <roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#ai" roleURI="http://xbrl.sec.gov/dei/role/document/AuditInformation"/>
  <presentationLink xlink:role="http://espey.com/role/ConsolidatedBalanceSheet" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNetAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNetAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_InventoryNetAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryRawMaterials"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryNetAbstract" xlink:to="us-gaap_InventoryRawMaterials" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWorkInProcess"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryNetAbstract" xlink:to="us-gaap_InventoryWorkInProcess" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryNetAbstract" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:to="us-gaap_InventoryNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="DeferredTaxAssetsCurrent" xlink:href="esp-20250331.xsd#esp_DeferredTaxAssetsCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="DeferredTaxAssetsCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_AssetsCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_Assets" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccountsPayableCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrentAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedSalariesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedSalariesCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedVacationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedVacationCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedVacationCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedPayrollTaxesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccruedPayrollTaxesCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TaxesPayableCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_TaxesPayableCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_LiabilitiesCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_Liabilities" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20250331.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="TotalStockholdersEquityBeforyEsopAndTreasuryStock" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="UnearnedEsopSharesCost" xlink:href="esp-20250331.xsd#esp_UnearnedEsopSharesCost"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="UnearnedEsopSharesCost" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="UnearnedEsopSharesCost" xlink:to="us-gaap_TreasuryStockValue" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_StockholdersEquity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesAuthorized" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesIssued"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesIssued" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesHeldInEmployeeTrustShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesHeldInEmployeeTrustShares" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_TreasuryStockCommonShares" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ConsolidatedIncomeStatement" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Revenues"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_Revenues" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CostOfRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_CostOfRevenue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_GrossProfit" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_OperatingIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NonoperatingIncomeExpenseAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentIncomeInterest"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InvestmentIncomeInterest" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNonoperatingIncome"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_OtherNonoperatingIncome" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NonoperatingIncomeExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NetIncomeLoss" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareAbstract" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasic"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDiluted"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_CommonStockMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AdditionalPaidInCapitalMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_RetainedEarningsMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_TreasuryStockCommonMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="UnearnedESOPSharesMember" xlink:href="esp-20250331.xsd#esp_UnearnedESOPSharesMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="UnearnedESOPSharesMember" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="6.0"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DividendsCommonStock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DividendsCommonStock" order="9.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity_0" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockSharesOutstanding_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding_0" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TreasuryStockCommonShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares_0" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ConsolidatedCashFlow" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Depreciation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_Depreciation" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedSalaries"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedSalaries" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IncreaseDecreaseInVacationAccrual" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseInVacationAccrual"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInVacationAccrual" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IncreaseDecreaseinESOPPayable" xlink:href="esp-20250331.xsd#esp_IncreaseDecreaseinESOPPayable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseinESOPPayable" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20250331.xsd#esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreasedecreaseInPayrollAndOtherTaxesWithheld" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="ProceedsFromGrantAward" xlink:href="esp-20250331.xsd#esp_ProceedsFromGrantAward"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="ProceedsFromGrantAward" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireInvestments" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromRepurchaseOfEquity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromRepurchaseOfEquity" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_0" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SupplementalCashFlowElementsAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_SupplementalCashFlowElementsAbstract" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/BasisofPresentation" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/InvestmentSecurities" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_InvestmentTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/NetIncomePerShare" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/StockBasedCompensation" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/CommitmentsandContingencies" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/Revenue" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenuesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/RecentlyIssuedAccountingStandards" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/EmployeeStockOwnershipPlan" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:to="EmployeeStockOwnershipPlanTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/InvestmentSecuritiesTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAbstract" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/NetIncomePerShareTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XncOfhwynpbLSlg/EHV+wnkBCjYz99GxoVyTdmm5esYO6v4WZiwUdXqbHm3T9lIqBI6ihpM1ztbmPpUOBu6RJYQRhwVY1ieH1g7XlcmlNCUIFKPfhGyXVPC1TQLe/FNpUnR3X3JcQc0H2GSdR7a94SoxVvEDIErhoktTmr4ibeP1A==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/StockBasedCompensationTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanTables" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FinancialInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinancialInstrumentAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:to="us-gaap_FinancialInstrumentAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CertificatesOfDepositMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CertificatesOfDepositMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_CertificatesOfDepositMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MunicipalBondsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_MunicipalBondsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_MunicipalBondsMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_USTreasuryBillSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_USTreasuryBillSecuritiesMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:to="us-gaap_ScheduleOfInvestmentsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TradingSecuritiesDebtAmortizedCost"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_TradingSecuritiesDebtAmortizedCost" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:href="esp-20250331.xsd#esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract" xlink:to="InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" order="0.0"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:to="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="CommonSharesOutstandingBasic" xlink:href="esp-20250331.xsd#esp_CommonSharesOutstandingBasic"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="CommonSharesOutstandingBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesIssuedBasic"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDilutedAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="CommonSharesOutstandingDiluted" xlink:href="esp-20250331.xsd#esp_CommonSharesOutstandingDiluted"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="CommonSharesOutstandingDiluted" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_0" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_0" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofStockOptionActivityTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="ScheduleOfStockOptionActivityAbstract" xlink:href="esp-20250331.xsd#esp_ScheduleOfStockOptionActivityAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:href="esp-20250331.xsd#esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfStockOptionActivityAbstract" xlink:to="StockBasedCompensationScheduleofStockOptionActivityDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:to="us-gaap_AwardTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockOptionMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_StockOptionMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" xlink:href="esp-20250331.xsd#esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xlink:href="esp-20250331.xsd#esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" order="6.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xlink:href="esp-20250331.xsd#esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" order="6.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_0" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ScheduleofESOPSharesTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/NetIncomePerShareDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/StockBasedCompensationDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsTable" xlink:href="esp-20250331.xsd#esp_StockBasedCompensationDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="StockBasedCompensationDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsTable" xlink:to="us-gaap_PlanNameAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PlanNameDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="TwoThousandSeventeenPlanMember" xlink:href="esp-20250331.xsd#esp_TwoThousandSeventeenPlanMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="TwoThousandSeventeenPlanMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="TwoThousandSevenPlanMember" xlink:href="esp-20250331.xsd#esp_TwoThousandSevenPlanMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="TwoThousandSevenPlanMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsTable" xlink:to="srt_RangeAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_RangeMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0.0"/>
    <loc xlink:type="locator" xlink:label="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_MaximumMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsTable" xlink:to="srt_TitleOfIndividualAxis" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="NonEmployeeDirectorsMember" xlink:href="esp-20250331.xsd#esp_NonEmployeeDirectorsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="NonEmployeeDirectorsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IndividualEmployeeMember" xlink:href="esp-20250331.xsd#esp_IndividualEmployeeMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="IndividualEmployeeMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsTable" xlink:to="us-gaap_AwardTypeAxis" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="NonQualifiedStockOptionsMember" xlink:href="esp-20250331.xsd#esp_NonQualifiedStockOptionsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="NonQualifiedStockOptionsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IncentiveStockOptionMember" xlink:href="esp-20250331.xsd#esp_IncentiveStockOptionMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="IncentiveStockOptionMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOptionMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="RestrictedStockPlanMember" xlink:href="esp-20250331.xsd#esp_RestrictedStockPlanMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="RestrictedStockPlanMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsTable" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredOtherTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredOtherTaxExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_DeferredOtherTaxExpenseBenefit" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:href="esp-20250331.xsd#esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:href="esp-20250331.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="DividendPayableAmountPerShare" xlink:href="esp-20250331.xsd#esp_DividendPayableAmountPerShare"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="DividendPayableAmountPerShare" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/CommitmentsandContingenciesDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="CommitmentsandContingenciesDetailsTable" xlink:href="esp-20250331.xsd#esp_CommitmentsandContingenciesDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherCommitmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="CommitmentsandContingenciesDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsandContingenciesDetailsTable" xlink:to="us-gaap_InvestmentTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" order="0.0"/>
    <loc xlink:type="locator" xlink:label="NavysInvestmentMember" xlink:href="esp-20250331.xsd#esp_NavysInvestmentMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="NavysInvestmentMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsandContingenciesDetailsTable" xlink:to="us-gaap_OtherCommitmentsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LettersOfCreditOutstandingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CustomerFunds" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CustomerFunds"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_CustomerFunds" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_DeferredTaxAssetsGross" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="us-gaap_AccountsPayableCurrentAndNoncurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="TerminationWithdrawalObligation" xlink:href="esp-20250331.xsd#esp_TerminationWithdrawalObligation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherCommitmentsLineItems" xlink:to="TerminationWithdrawalObligation" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/RevenueDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="RevenueDetailsTable" xlink:href="esp-20250331.xsd#esp_RevenueDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenuesAbstract" xlink:to="RevenueDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_TypeOfAdoptionMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" order="0.0"/>
    <loc xlink:type="locator" xlink:label="ASC606Member" xlink:href="esp-20250331.xsd#esp_ASC606Member"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="ASC606Member" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OrderOrProductionBacklogMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_OrderOrProductionBacklogMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsTable" xlink:to="srt_StatementScenarioAxis" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_ScenarioUnspecifiedDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="UnitsDeliveredMember" xlink:href="esp-20250331.xsd#esp_UnitsDeliveredMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="UnitsDeliveredMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="MilestonesAchievedMember" xlink:href="esp-20250331.xsd#esp_MilestonesAchievedMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementScenarioAxis" xlink:to="MilestonesAchievedMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsTable" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Revenues"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_Revenues" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiability"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_ContractWithCustomerLiability" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="ContractTerm" xlink:href="esp-20250331.xsd#esp_ContractTerm"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="ContractTerm" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitionsYearOne" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearOne"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="BacklogPercentageOfRecognitionsYearOne" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitionsYearTwo" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearTwo"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="BacklogPercentageOfRecognitionsYearTwo" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitionsYearThree" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitionsYearThree"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="BacklogPercentageOfRecognitionsYearThree" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitions" xlink:href="esp-20250331.xsd#esp_BacklogPercentageOfRecognitions"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="BacklogPercentageOfRecognitions" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanDetails" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract" xlink:to="EmployeeStockOwnershipPlanDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanDetailsTable" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanMember" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:to="EmployeeStockOwnershipPlanMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanDetailsTable" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanHoursWorked" xlink:href="esp-20250331.xsd#esp_EmployeeStockOwnershipPlanHoursWorked"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="EmployeeStockOwnershipPlanHoursWorked" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://xbrl.sec.gov/dei/role/document/Cover" xlink:type="extended"/>
  <presentationLink xlink:role="http://xbrl.sec.gov/dei/role/document/AuditInformation" xlink:type="extended"/>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - shares<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>May 08, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 31,  2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInformationLineItems', window );"><strong>Entity Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">ESPEY MFG. & ELECTRONICS CORP.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000033533<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">1-4383<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">14-1387171<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">NY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--06-30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityContactPersonnelLineItems', window );"><strong>Entity Contact Personnel [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">233 Ballston Avenue<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Saratoga
Springs<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">NY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">12866<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityPhoneFaxNumbersLineItems', window );"><strong>Entity Phone Fax Numbers [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">518<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">245-4400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityListingsLineItems', window );"><strong>Entity Listings [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock $.33-1/3 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ESP<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSEAMER<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,831,399<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityContactPersonnelLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityContactPersonnelLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityListingsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityListingsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPhoneFaxNumbersLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityPhoneFaxNumbersLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsAbstract', window );"><strong>ASSETS</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 13,859,462<span></span>
</td>
<td class="nump">$ 4,351,970<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Investment securities</a></td>
<td class="nump">24,635,038<span></span>
</td>
<td class="nump">18,878,631<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Trade accounts receivable, less allowance for credit losses of $3,000</a></td>
<td class="nump">6,407,177<span></span>
</td>
<td class="nump">6,635,490<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNetAbstract', window );"><strong>Inventories:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterials', window );">Raw materials</a></td>
<td class="nump">1,859,193<span></span>
</td>
<td class="nump">1,693,448<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Work-in-process</a></td>
<td class="nump">554,820<span></span>
</td>
<td class="nump">1,645,973<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryForLongTermContractsOrPrograms', window );">Costs related to contracts in process</a></td>
<td class="nump">14,174,050<span></span>
</td>
<td class="nump">15,904,588<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventories</a></td>
<td class="nump">16,588,063<span></span>
</td>
<td class="nump">19,244,009<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_DeferredTaxAssetsCurrent', window );">Net deferred tax assets</a></td>
<td class="nump">923,934<span></span>
</td>
<td class="nump">895,154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">4,945,190<span></span>
</td>
<td class="nump">3,231,402<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">67,358,864<span></span>
</td>
<td class="nump">53,236,656<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">5,480,631<span></span>
</td>
<td class="nump">3,306,275<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">72,839,495<span></span>
</td>
<td class="nump">56,542,931<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquityAbstract', window );"><strong>LIABILITIES AND STOCKHOLDERS' EQUITY</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">2,075,635<span></span>
</td>
<td class="nump">3,751,209<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued expenses:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedSalariesCurrent', window );">Salaries and wages</a></td>
<td class="nump">850,695<span></span>
</td>
<td class="nump">928,163<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedVacationCurrent', window );">Vacation</a></td>
<td class="nump">593,723<span></span>
</td>
<td class="nump">511,144<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedEmployeeBenefitsCurrent', window );">ESOP payable</a></td>
<td class="nump">276,683<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">1,359,315<span></span>
</td>
<td class="nump">757,552<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedPayrollTaxesCurrent', window );">Payroll and other taxes withheld</a></td>
<td class="nump">63,357<span></span>
</td>
<td class="nump">56,862<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="nump">21,018,310<span></span>
</td>
<td class="nump">9,043,422<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Income taxes payable</a></td>
<td class="nump">277,030<span></span>
</td>
<td class="nump">220,607<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">26,514,748<span></span>
</td>
<td class="nump">15,268,959<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">26,514,748<span></span>
</td>
<td class="nump">15,268,959<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (See Note 5)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Authorized 10,000,000 shares; Issued 3,129,874 shares as of March 31, 2025 and June 30, 2024. Outstanding 2,816,558 and 2,733,958 shares as of March 31, 2025 and June 30, 2024, respectively (includes 195,234 and 211,487 Unearned ESOP shares, respectively)</a></td>
<td class="nump">1,043,291<span></span>
</td>
<td class="nump">1,043,291<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Capital in excess of par value</a></td>
<td class="nump">25,172,305<span></span>
</td>
<td class="nump">23,930,428<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive gain</a></td>
<td class="nump">6,731<span></span>
</td>
<td class="nump">6,544<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">29,287,337<span></span>
</td>
<td class="nump">26,004,790<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock', window );">Total stockholders equity before ESOP</a></td>
<td class="nump">55,509,664<span></span>
</td>
<td class="nump">50,985,053<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_UnearnedEsopSharesCost', window );">Less: Unearned ESOP shares</a></td>
<td class="num">(3,868,093)<span></span>
</td>
<td class="num">(3,868,093)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Cost of 313,316 and 395,916 shares of common stock in treasury as of March 31, 2025 and June 30, 2024, respectively</a></td>
<td class="num">(5,316,824)<span></span>
</td>
<td class="num">(5,842,988)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">46,324,747<span></span>
</td>
<td class="nump">41,273,972<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 72,839,495<span></span>
</td>
<td class="nump">$ 56,542,931<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_DeferredTaxAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_DeferredTaxAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, before ESOP and Treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_UnearnedEsopSharesCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unearned ESOP shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_UnearnedEsopSharesCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedEmployeeBenefitsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedEmployeeBenefitsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedPayrollTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory payroll taxes incurred through that date and withheld from employees pertaining to services received from them, including entity's matching share of the employees FICA taxes and contributions to the state and federal unemployment insurance programs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedPayrollTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedSalariesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedSalariesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedVacationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for unused vacation time owed to employees based on the entity's vacation benefit given to its employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 710<br> -SubTopic 10<br> -Section 25<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483070/710-10-25-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedVacationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 35: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481830/320-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalent. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (01)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryForLongTermContractsOrPrograms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves, and progress payments, of inventory associated with long-term contracts, expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryForLongTermContractsOrPrograms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligations incurred for employer-related costs classified as other, payable within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherEmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Balance Sheets (Parentheticals) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Trade accounts receivable, allowance (in Dollars)</a></td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">$ 3,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized</a></td>
<td class="nump">10,000,000<span></span>
</td>
<td class="nump">10,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">3,129,874<span></span>
</td>
<td class="nump">3,129,874<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding</a></td>
<td class="nump">2,816,558<span></span>
</td>
<td class="nump">2,733,958<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesHeldInEmployeeTrustShares', window );">Unearned ESOP shares</a></td>
<td class="nump">195,234<span></span>
</td>
<td class="nump">211,487<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in Dollars per share)</a></td>
<td class="nump">$ 0.33<span></span>
</td>
<td class="nump">$ 0.33<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock, shares</a></td>
<td class="nump">313,316<span></span>
</td>
<td class="nump">395,916<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesHeldInEmployeeTrustShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of common stock held in a trust that has been set up specifically to accumulate stock for the sole purpose of distribution to participating employees but not yet earned.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesHeldInEmployeeTrustShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Statements of Comprehensive Income (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 10,302,719<span></span>
</td>
<td class="nump">$ 8,254,653<span></span>
</td>
<td class="nump">$ 34,354,677<span></span>
</td>
<td class="nump">$ 27,125,408<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of sales</a></td>
<td class="nump">7,354,335<span></span>
</td>
<td class="nump">6,190,462<span></span>
</td>
<td class="nump">25,441,699<span></span>
</td>
<td class="nump">19,673,265<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">2,948,384<span></span>
</td>
<td class="nump">2,064,191<span></span>
</td>
<td class="nump">8,912,978<span></span>
</td>
<td class="nump">7,452,143<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative expenses</a></td>
<td class="nump">1,197,262<span></span>
</td>
<td class="nump">971,220<span></span>
</td>
<td class="nump">3,418,206<span></span>
</td>
<td class="nump">3,044,591<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">1,751,122<span></span>
</td>
<td class="nump">1,092,971<span></span>
</td>
<td class="nump">5,494,772<span></span>
</td>
<td class="nump">4,407,552<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other income</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentIncomeInterest', window );">Interest income</a></td>
<td class="nump">324,705<span></span>
</td>
<td class="nump">181,940<span></span>
</td>
<td class="nump">852,544<span></span>
</td>
<td class="nump">490,883<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncome', window );">Other</a></td>
<td class="nump">11,601<span></span>
</td>
<td class="nump">2,881<span></span>
</td>
<td class="nump">30,595<span></span>
</td>
<td class="nump">22,275<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Total other income</a></td>
<td class="nump">336,306<span></span>
</td>
<td class="nump">184,821<span></span>
</td>
<td class="nump">883,139<span></span>
</td>
<td class="nump">513,158<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before provision for income taxes</a></td>
<td class="nump">2,087,428<span></span>
</td>
<td class="nump">1,277,792<span></span>
</td>
<td class="nump">6,377,911<span></span>
</td>
<td class="nump">4,920,710<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">382,941<span></span>
</td>
<td class="nump">245,862<span></span>
</td>
<td class="nump">1,166,608<span></span>
</td>
<td class="nump">998,866<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">1,704,487<span></span>
</td>
<td class="nump">1,031,930<span></span>
</td>
<td class="nump">5,211,303<span></span>
</td>
<td class="nump">3,921,844<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Other comprehensive income, net of tax:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Unrealized gain on investment securities</a></td>
<td class="nump">1,727<span></span>
</td>
<td class="nump">2,151<span></span>
</td>
<td class="nump">187<span></span>
</td>
<td class="nump">7,568<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="nump">$ 1,706,214<span></span>
</td>
<td class="nump">$ 1,034,081<span></span>
</td>
<td class="nump">$ 5,211,490<span></span>
</td>
<td class="nump">$ 3,929,412<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net income per share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (in Dollars per share)</a></td>
<td class="nump">$ 0.66<span></span>
</td>
<td class="nump">$ 0.41<span></span>
</td>
<td class="nump">$ 2.03<span></span>
</td>
<td class="nump">$ 1.58<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in Dollars per share)</a></td>
<td class="nump">$ 0.63<span></span>
</td>
<td class="nump">$ 0.4<span></span>
</td>
<td class="nump">$ 1.95<span></span>
</td>
<td class="nump">$ 1.56<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average number of shares outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in Shares)</a></td>
<td class="nump">2,599,960<span></span>
</td>
<td class="nump">2,491,906<span></span>
</td>
<td class="nump">2,569,514<span></span>
</td>
<td class="nump">2,480,153<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in Shares)</a></td>
<td class="nump">2,699,674<span></span>
</td>
<td class="nump">2,571,921<span></span>
</td>
<td class="nump">2,668,928<span></span>
</td>
<td class="nump">2,519,708<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareDeclared', window );">Dividends per share: (in Dollars per share)</a></td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.175<span></span>
</td>
<td class="nump">$ 0.75<span></span>
</td>
<td class="nump">$ 0.475<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIncomeInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-18<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Statements of Changes in Stockholders' Equity (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Capital in Excess of Par Value</div></th>
<th class="th"><div>Accumulated Other Comprehensive Gain</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Treasury Stock</div></th>
<th class="th"><div>Unearned ESOP Shares</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2023</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">$ 23,283,245<span></span>
</td>
<td class="num">$ (2,429)<span></span>
</td>
<td class="nump">$ 21,867,720<span></span>
</td>
<td class="num">$ (6,038,691)<span></span>
</td>
<td class="num">$ (4,273,378)<span></span>
</td>
<td class="nump">$ 35,879,758<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Jun. 30, 2023</a></td>
<td class="nump">2,702,633<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Jun. 30, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">427,241<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,921,844<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,921,844<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax', window );">Other comprehensive income (gain), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,568<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,568<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,929,412<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">316,007<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 188,206<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">504,213<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised (in Shares)</a></td>
<td class="nump">30,125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(30,125)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">206,575<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">206,575<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividends paid on common stock, per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,178,008)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,178,008)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2024</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">23,805,827<span></span>
</td>
<td class="nump">5,139<span></span>
</td>
<td class="nump">24,611,556<span></span>
</td>
<td class="num">$ (5,850,485)<span></span>
</td>
<td class="num">(4,273,378)<span></span>
</td>
<td class="nump">39,341,950<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Mar. 31, 2024</a></td>
<td class="nump">2,732,758<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">397,116<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">23,448,890<span></span>
</td>
<td class="nump">2,988<span></span>
</td>
<td class="nump">24,015,739<span></span>
</td>
<td class="num">$ (6,013,701)<span></span>
</td>
<td class="num">(4,273,378)<span></span>
</td>
<td class="nump">38,223,829<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Dec. 31, 2023</a></td>
<td class="nump">2,706,633<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">423,241<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,031,930<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,031,930<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax', window );">Other comprehensive income (gain), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,151<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,151<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,034,081<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">281,517<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 163,216<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">444,733<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised (in Shares)</a></td>
<td class="nump">26,125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(26,125)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,420<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,420<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividends paid on common stock, per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(436,113)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(436,113)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2024</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">23,805,827<span></span>
</td>
<td class="nump">5,139<span></span>
</td>
<td class="nump">24,611,556<span></span>
</td>
<td class="num">$ (5,850,485)<span></span>
</td>
<td class="num">(4,273,378)<span></span>
</td>
<td class="nump">39,341,950<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Mar. 31, 2024</a></td>
<td class="nump">2,732,758<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">397,116<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2024</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">23,930,428<span></span>
</td>
<td class="nump">6,544<span></span>
</td>
<td class="nump">26,004,790<span></span>
</td>
<td class="num">$ (5,842,988)<span></span>
</td>
<td class="num">(3,868,093)<span></span>
</td>
<td class="nump">$ 41,273,972<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Jun. 30, 2024</a></td>
<td class="nump">2,733,958<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,733,958<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Jun. 30, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">395,916<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">395,916<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,211,303<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,211,303<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax', window );">Other comprehensive income (gain), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">187<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">187<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,211,490<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">955,621<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 526,164<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,481,785<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised (in Shares)</a></td>
<td class="nump">82,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(82,600)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">286,256<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">286,256<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividends paid on common stock, per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,928,756)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,928,756)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2025</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">25,172,305<span></span>
</td>
<td class="nump">6,731<span></span>
</td>
<td class="nump">29,287,337<span></span>
</td>
<td class="num">$ (5,316,824)<span></span>
</td>
<td class="num">(3,868,093)<span></span>
</td>
<td class="nump">$ 46,324,747<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Mar. 31, 2025</a></td>
<td class="nump">2,816,558<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,816,558<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Mar. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">313,316<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">313,316<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2024</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">24,851,718<span></span>
</td>
<td class="nump">5,004<span></span>
</td>
<td class="nump">28,232,545<span></span>
</td>
<td class="num">$ (5,447,820)<span></span>
</td>
<td class="num">(3,868,093)<span></span>
</td>
<td class="nump">$ 44,816,645<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Dec. 31, 2024</a></td>
<td class="nump">2,796,758<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Dec. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">333,116<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,704,487<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,704,487<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax', window );">Other comprehensive income (gain), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,727<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,727<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,706,214<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">227,364<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 130,996<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">358,360<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised (in Shares)</a></td>
<td class="nump">19,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(19,800)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">93,223<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">93,223<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividends paid on common stock, per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(649,695)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(649,695)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2025</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">$ 25,172,305<span></span>
</td>
<td class="nump">$ 6,731<span></span>
</td>
<td class="nump">$ 29,287,337<span></span>
</td>
<td class="num">$ (5,316,824)<span></span>
</td>
<td class="num">$ (3,868,093)<span></span>
</td>
<td class="nump">$ 46,324,747<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in Shares) at Mar. 31, 2025</a></td>
<td class="nump">2,816,558<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,816,558<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Balance (in Shares) at Mar. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">313,316<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">313,316<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid common stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -SubTopic 405<br> -Topic 942<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477787/942-405-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of gain (loss) for (increase) decrease in value of benefit obligation for change in actuarial assumptions and increase (decrease) in value of plan assets from experience different from that assumed of defined benefit plan, that has not been recognized in net periodic benefit (cost) credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-5<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax', window );">Other comprehensive income (gain), net of tax</a></td>
<td class="nump">$ 363<span></span>
</td>
<td class="nump">$ 452<span></span>
</td>
<td class="nump">$ 39<span></span>
</td>
<td class="nump">$ 1,589<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Dividends paid on common stock per share</a></td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.175<span></span>
</td>
<td class="nump">$ 0.75<span></span>
</td>
<td class="nump">$ 0.475<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends paid during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before adjustment, of tax expense (benefit) for unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes tax expense (benefit) for unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Statements of Cash Flows (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash Flows from Operating Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 5,211,303<span></span>
</td>
<td class="nump">$ 3,921,844<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">286,256<span></span>
</td>
<td class="nump">206,575<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">334,732<span></span>
</td>
<td class="nump">343,825<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense', window );">ESOP compensation expense</a></td>
<td class="nump">435,298<span></span>
</td>
<td class="nump">311,664<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax benefit</a></td>
<td class="num">(28,780)<span></span>
</td>
<td class="num">(916,006)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">(Gain) Loss on disposal of property, plant and equipment</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">590<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Decrease in trade accounts receivable</a></td>
<td class="nump">228,313<span></span>
</td>
<td class="nump">439,862<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Decrease in income taxes receivable</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">35,666<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Decrease in inventories</a></td>
<td class="nump">2,655,946<span></span>
</td>
<td class="nump">278,237<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Increase in prepaid expenses and other current assets</a></td>
<td class="num">(1,713,788)<span></span>
</td>
<td class="nump">728,069<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Decrease in accounts payable</a></td>
<td class="num">(1,675,574)<span></span>
</td>
<td class="nump">1,623,255<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedSalaries', window );">Decrease in accrued salaries and wages</a></td>
<td class="num">(77,468)<span></span>
</td>
<td class="num">(178,004)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_IncreaseDecreaseInVacationAccrual', window );">Increase in vacation accrual</a></td>
<td class="nump">82,579<span></span>
</td>
<td class="num">(119,481)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_IncreaseDecreaseinESOPPayable', window );">Increase in ESOP payable</a></td>
<td class="num">(158,615)<span></span>
</td>
<td class="num">(110,982)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities', window );">Increase in other accrued expenses</a></td>
<td class="nump">601,763<span></span>
</td>
<td class="nump">437,611<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld', window );">Increase in payroll and other taxes withheld</a></td>
<td class="nump">6,495<span></span>
</td>
<td class="nump">4,549<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Increase in contract liabilities</a></td>
<td class="nump">11,974,888<span></span>
</td>
<td class="num">(375,829)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Increase in income taxes payable</a></td>
<td class="nump">56,423<span></span>
</td>
<td class="nump">719,217<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">18,219,771<span></span>
</td>
<td class="nump">7,350,662<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash Flows from Investing Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Additions to property, plant and equipment</a></td>
<td class="num">(2,509,088)<span></span>
</td>
<td class="num">(4,501,997)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_ProceedsFromGrantAward', window );">Proceeds from grant award</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">4,228,722<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of property, plant and equipment</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">150<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchase of investment securities</a></td>
<td class="num">(26,616,220)<span></span>
</td>
<td class="num">(18,442,671)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities', window );">Proceeds from sale/maturity of investment securities</a></td>
<td class="nump">20,860,000<span></span>
</td>
<td class="nump">14,846,438<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(8,265,308)<span></span>
</td>
<td class="num">(3,869,358)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash Flows from Financing Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsCommonStock', window );">Dividends on common stock</a></td>
<td class="num">(1,928,756)<span></span>
</td>
<td class="num">(1,178,008)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromRepurchaseOfEquity', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">1,481,785<span></span>
</td>
<td class="nump">504,213<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(446,971)<span></span>
</td>
<td class="num">(673,795)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect', window );">Increase in cash and cash equivalents</a></td>
<td class="nump">9,507,492<span></span>
</td>
<td class="nump">2,807,509<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents, beginning of period</a></td>
<td class="nump">4,351,970<span></span>
</td>
<td class="nump">2,748,755<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents, end of period</a></td>
<td class="nump">13,859,462<span></span>
</td>
<td class="nump">5,556,264<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', window );"><strong>Supplemental Schedule of Cash Flow Information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes paid</a></td>
<td class="nump">$ 1,139,015<span></span>
</td>
<td class="nump">$ 1,162,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_IncreaseDecreaseInVacationAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) in vacation accrual for the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_IncreaseDecreaseInVacationAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_IncreaseDecreaseinESOPPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (Decrease) in employee stock ownership plan payable amount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_IncreaseDecreaseinESOPPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (decrease) in payroll and other taxes withheld.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ProceedsFromGrantAward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from grant award.

.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_ProceedsFromGrantAward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding effect from change in exchange rate, of increase (decrease) in cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-18<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-11<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-24<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-12<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of plan compensation cost recognized during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedSalaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in accrued salaries.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedSalaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478345/912-310-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in other expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activity, including, but not limited to, discontinued operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activity, including, but not limited to, discontinued operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, property, plant, and equipment, and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activity, including, but not limited to, discontinued operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the purchase of all investments (debt, security, other) during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromRepurchaseOfEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net cash inflow or outflow resulting from the entity's share transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromRepurchaseOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from sale, maturity, prepayment and call of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481830/320-10-45-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowElementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowElementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Basis of Presentation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 1. Basis of Presentation</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In the opinion of management the accompanying
unaudited financial statements contain all adjustments (consisting of normal recurring adjustments) necessary for a fair presentation
of the results for such periods. The results for any interim period are not necessarily indicative of the results to be expected for the
full fiscal year. Certain information and footnote disclosures normally included in financial statements prepared in accordance with United
States generally accepted accounting principles have been condensed or omitted. The preparation of these financial statements requires
us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues and expenses, and related disclosure
of assets and liabilities. On an ongoing basis, we evaluate our estimates and judgments, including those related to revenue recognition,
inventories, income taxes, and stock-based compensation. Specific to inventories, including work-in-process and contracts in process,
management evaluates, quarterly, those estimates used in determining the cost to complete for each contract on Espey Mfg. &amp; Electronics
Corp.&#8217;s (the &#8220;Company&#8221;) sales backlog. The change in estimates may affect the reported amount of inventories and gross
profit in the current or a future period and could result in the Company recording a loss contingency when a loss is determined to be
probable and reasonably estimated. Management bases its estimates on historical experience and on various other factors that are believed
to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying amounts of assets
and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates under different assumptions
or conditions. These financial statements should be read in conjunction with the Company's most recent audited financial statements included
in its report on Form 10-K for the year ended June 30, 2024. Certain reclassifications may have been made to the prior year financial
statements to conform to the current year presentation.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investment Securities<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentsAbstract', window );"><strong>Investment Securities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTextBlock', window );">Investment Securities</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0; text-align: justify">Note 2. Investment Securities</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">FASB Accounting Standards Codification
(&#8220;ASC&#8221;) 820 &#8220;Fair Value Measurements and Disclosures&#8221; establishes a fair value hierarchy which requires an
entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard
describes three levels of inputs that may be used to measure fair value:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 22.5pt"></td><td style="width: 13.5pt"><span>&#9726;</span></td><td style="text-align: justify">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity
has the ability to access as of the measurement date.</td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 22.5pt"></td><td style="width: 13.5pt"><span>&#9726;</span></td><td style="text-align: justify">Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar
assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
market data.</td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"><tr style="vertical-align: top">
<td style="width: 22.3pt"></td><td style="width: 13.7pt"><span>&#9726;</span></td><td style="text-align: justify">Level 3: Significant unobservable inputs that reflect a reporting entity&#8217;s own assumptions about
the assumptions that market participants would use in pricing an asset or liability.</td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The carrying amounts of financial instruments,
including cash and cash equivalents, short term investments, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of March 31, 2025 and June 30, 2024 because of the immediate or short-term maturity of these financial instruments.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Investment securities at March 31, 2025 and June
30, 2024 consisted of certificates of deposit, municipal bonds and U.S. Treasury bills. The Company classifies investment securities as
available-for-sale which have been determined to be level 1 assets. The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at March 31, 2025 and June 30, 2024 are as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Gross</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Gross</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Amortized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unrealized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unrealized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Fair</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Cost</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Gains</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Losses</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Value</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">March 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 40%">Certificates of deposit</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">23,492,000</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-9">&#8212;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-10">&#8212;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">23,492,000</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,134,518</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,988</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(468</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,143,038</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">U.S. Treasury bills</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-11">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-12">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-13">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-14">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">24,626,518</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">8,988</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(468</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">24,635,038</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">June 30, 2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Certificates of deposit</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">17,651,000</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-15">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-16">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">17,651,000</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">709,059</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,824</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,313</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">711,570</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; text-align: left">U.S. Treasury bills</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">510,288</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,773</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-17">&#8212;</div></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">516,061</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">18,870,347</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">11,597</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(3,313</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">18,878,631</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The portfolio is diversified and highly liquid
and primarily consists of investment grade fixed income instruments. At March 31, 2025, the Company did not have any investments in individual
securities that have been in a continuous loss position considered to be other than temporary.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of March 31, 2025 and June 30, 2024, the remaining
contractual maturities of available-for-sale debt securities were as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Years to Maturity</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Less than</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">One to</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">One Year</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Five Years</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Total</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">March 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 55%; padding-bottom: 1pt">Available-for-sale</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right">23,139,022</td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right">1,496,016</td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right">24,635,038</td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-decoration: underline">June 30, 2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Available-for-sale</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">17,889,582</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">989,049</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">18,878,631</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for investment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/320/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Topic 321<br> -Publisher FASB<br> -URI https://asc.fasb.org/321/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Topic 325<br> -Publisher FASB<br> -URI https://asc.fasb.org/325/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income Per Share<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net Income Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Net Income per Share</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 3. Net Income per Share</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Basic net income per share excludes dilution and
is computed by dividing net income available to common stockholders by the weighted average number of common shares outstanding for the
period. Diluted net income per share reflects the potential dilution that could occur if securities or other contracts to issue common
stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the income of the
Company. The computation of diluted net income per share excluded options to purchase 2,500 shares of our common stock for the three and
nine months ended March 31, 2025 and 60,766 shares for the three and nine months ended March 31, 2024, as the effect of including them
would be anti-dilutive. As unearned shares owned by the Company&#8217;s sponsored leveraged employee stock ownership plan (the &#8220;ESOP&#8221;)
are released or committed-to-be-released, the shares become outstanding for earnings-per-share computations.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the three month
periods ended March 31:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right">2025</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right">2024</td>
    <td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Numerator:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 70%; padding-bottom: 2.5pt">Net income</td>
    <td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: black 2.25pt double">$</td>
    <td style="width: 12%; border-bottom: black 2.25pt double; text-align: right">1,704,487</td>
    <td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: black 2.25pt double">$</td>
    <td style="width: 12%; border-bottom: black 2.25pt double; text-align: right">1,031,930</td>
    <td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Denominator:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Basic EPS:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,796,758</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,706,633</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(200,652</td>
    <td style="white-space: nowrap">)</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(222,566</td>
    <td style="white-space: nowrap">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">3,794</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">7,778</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average ESOP shares earned during the period</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">60</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">61</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Denominator for basic earnings per common shares &#8211;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,599,960</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,491,906</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted EPS:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,796,758</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,706,633</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(200,652</td>
    <td style="white-space: nowrap">)</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(222,566</td>
    <td style="white-space: nowrap">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">3,794</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">7,778</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Weighted average ESOP shares earned during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">60</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">61</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average dilutive effect of stock options</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">99,714</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">80,015</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Denominator for diluted earnings per common shares &#8211;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,699,674</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,571,921</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td></tr>
  </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the nine month
periods ended March 31:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Numerator:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 70%; text-align: left; padding-bottom: 2.5pt">Net income</td><td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right">5,211,303</td><td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right">3,921,844</td><td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Denominator:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Basic EPS:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,733,958</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,702,633</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(211,487</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(233,646</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">41,606</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,606</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average ESOP shares earned during the period</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,437</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,560</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 20pt">Denominator for basic earnings per common shares &#8211;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,569,514</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,480,153</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Diluted EPS:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,733,958</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,702,633</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(211,487</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(233,646</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">41,606</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,606</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Weighted average ESOP shares earned during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,437</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,560</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average dilutive effect of stock options</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">99,414</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">39,555</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Denominator for diluted earnings per common shares &#8211;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,668,928</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,519,708</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Based Compensation<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Stock Based Compensation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Stock Based Compensation</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Note 4. Stock Based Compensation</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: italic 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-style: normal; font-weight: normal">The
Company follows ASC 718 &#8220;Compensation - Stock Compensation&#8221; in establishing standards for the accounting for
transactions in which an entity exchanges its equity instruments for goods or services, as well as transactions in which an entity
incurs liabilities in exchange for goods or services that are based on the fair value of the entity&#8217;s equity instruments or
that may be settled by the issuance of those equity instruments. ASC 718 requires that the cost resulting from all share-based
payment transactions be recognized in the financial statements based on the fair value of the share-based payment. ASC 718
establishes fair value as the measurement objective in accounting for share-based payment transactions with employees, except for
equity instruments held by employee share ownership plans. </span></p>

<p style="font: italic 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Total stock-based compensation expense recognized
in the statements of comprehensive income for the three-month periods ended March 31, 2025 and 2024 was $93,223 and $75,420, respectively,
before income taxes. The amount of this stock-based compensation expense related to non-qualified stock options (&#8220;NQSOs&#8221;)
for the three-month periods ended March 31, 2025 and 2024 was $8,362 and $8,179, respectively. The deferred tax benefit related to the
NQSOs as of March 31, 2025 and 2024 was approximately $1,756 and $1,718, respectively. Total stock-based compensation expense recognized
in the statements of comprehensive income for the nine-month periods ended March 31, 2025 and 2024 was $286,256 and $206,575, respectively,
before income taxes. The amount of this stock-based compensation expense related to NQSOs for the nine-month periods ended March 31, 2025
and 2024 was $23,783 and $26,724, respectively. The deferred tax benefit related to the NQSOs as of March 31, 2025 and 2024 was approximately
$4,994 and $5,612, respectively. The remaining stock option expense in each year related to incentive stock options (&#8220;ISOs&#8221;)
which are not deductible by the Company when exercised, assuming a qualifying disposition and as such no deferred tax benefit was established
related to these amounts.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of March 31, 2025, there was $340,519 of unrecognized
compensation cost related to stock option awards that is expected to be recognized as expense over the next 1.75 years, of which $311,672
relates to ISOs and $28,847 relates to NQSOs. The total deferred tax benefit related to these awards is expected to be $6,058.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company has one employee stock option plan
under which options or stock awards may be granted, the 2017 Stock Option and Restricted Stock Plan (the "2017 Plan"). The Board
of Directors may grant options to acquire shares of common stock to employees and non-employee directors of the Company at the fair market
value of the common stock on the date of grant. The maximum aggregate number of shares of Common Stock subject to options or awards to
non-employee directors is 133,000 and the maximum aggregate number of shares of Common Stock subject to options or awards granted to non-employee
directors during any single fiscal year is the lesser of 13,300 and 33 1/3% of the total number of shares subject to options or awards
granted in such fiscal year. The maximum number of shares subject to options or awards granted to any individual employee may not exceed
15,000 in a fiscal year. Generally, options granted have a two-year vesting period based on two years of continuous service and have a
ten-year contractual life. Option grants provide for accelerated vesting if there is a change in control. Shares issued upon the exercise
of options are from those held in Treasury. Options covering 400,000 shares are authorized for issuance under the 2017 Plan. As of March
31, 2025, options covering 103,925 shares have been exercised and options covering 293,606 shares are outstanding. Options covering 2,469
shares remain available for grant after factoring the cancelled shares, which are eligible to be re-granted. While no further grants of
options may be made under the Company&#8217;s 2007 Stock Option and Restricted Stock Plan, as of March 31, 2025, 24,350 options were outstanding
under such plan of which all are vested and exercisable.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">ASC 718 requires the use of a valuation model
to calculate the fair value of stock-based awards. The Company has elected to use the Black-Scholes option valuation model, which incorporates
various assumptions including those for dividend yield, volatility, expected life and interest rates.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The table below outlines the weighted average
assumptions that the Company used to calculate the fair value of each option award for the nine months ended March 31, 2025 and 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; text-align: left">Dividend yield</td><td style="width: 1%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">3.79%</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">3.63%</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Company&#8217;s expected volatility</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">32.85%</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">31.20%</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Risk-free interest rate</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">4.35%</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">4.39%</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Expected term</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">5.1 yrs</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">5.3 yrs</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Weighted average fair value per share of options granted during the period</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">5.37</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">4.03</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company declared and paid regular cash dividends
of $0.75 per share for the nine months ended March 31, 2025 and paid $0.475 cash dividends for the nine months ended March 31, 2024. Expected
stock price volatility is based on the historical volatility of the Company&#8217;s stock. The risk-free interest rate is based on the
implied yield available on U.S. Treasury issues with an equivalent term approximating the expected life of the options. The expected option
term (in years) represents the estimated period of time until exercise and is based on actual historical experience.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table summarizes stock option activity
during the nine months ended March 31, 2025:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="15" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Employee Stock Option Plans</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Number of</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Shares</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Remaining</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Aggregate</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Subject</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Exercise</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Contractual</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Intrinsic</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Price</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Term</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Value</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 48%">Balance at July 1, 2024</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right">322,056</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">$</td><td style="width: 8%; text-align: right">18.41</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right">6.59</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-18">&#160;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td>Granted</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">79,000</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">21.79</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">9.29</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Exercised</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">(82,600</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">17.94</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-19">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1pt">Forfeited or expired</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(500</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">)</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">16.54</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-20">&#8212;</div></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt">Outstanding at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">317,956</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.37</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">6.83</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,471,791</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 2.5pt">Vested or expected to vest at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">302,783</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.10</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">6.64</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,363,682</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt">Exercisable at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">162,556</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.38</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">4.86</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,262,070</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The aggregate intrinsic value in the table above
represents the total pretax intrinsic value (the difference between the closing sale price of the Company&#8217;s common stock as reported
on the NYSE American on March 31, 2025 and the exercise price, multiplied by the number of in-the-money options) that would have been
received by the option holders if all option holders had exercised their options on March 31, 2025. This amount changes based on the fair
market value of the Company&#8217;s common stock. The intrinsic value of options exercised during the nine months ended March 31, 2025
and 2024 was $841,603 and $186,186, respectively.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The following table summarizes changes in non-vested stock options
during the nine months ended March 31, 2025:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; margin-left: auto; margin-right: auto; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted Number</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">of Shares</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Grant Date</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Subject</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Fair Value</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">(per Option)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Non-vested at July 1, 2024</td><td style="width: 3%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">147,300</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">4.15</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">79,000</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">5.37</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(70,400</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">4.16</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Forfeited or expired</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(500</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">)</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">4.03</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Non-vested at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">155,400</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">4.76</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Note 5. Commitments and Contingencies</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company from time to time, enters into standby
letters of credit agreements with financial institutions primarily relating to the guarantee of future performance on certain contracts.
Contingent liabilities on outstanding standby letters of credit agreements aggregated to zero at March 31, 2025 and June 30, 2024. The
Company, as a U.S. Government contractor, is subject to audits, reviews, and investigations by the U.S. Government related to its negotiation
and performance of government contracts and its accounting for such contracts. Failure to comply with applicable U.S. Government standards
by a contractor may result in suspension from eligibility for award of any new government contract and a guilty plea or conviction may
result in debarment from eligibility for awards. The government may, in certain cases, terminate existing contracts, recover damages,
and impose other sanctions and penalties. As a result of contract audits, the Company will determine a range of possible outcomes and,
in accordance with ASC 450 &#8220;Contingencies,&#8221; the Company will accrue amounts within a range that appears to be its best estimate
of a possible outcome. Adjustments are made to accruals, if any, periodically based on current information.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">We are party to various litigation matters and
claims arising from time to time in the ordinary course of business. There are no pending litigation matters or claims which we believe
will have a material adverse effect on our business, financial condition, results of operations or cash flows.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company was awarded $7.4 million in funding
during the second quarter of fiscal year 2023 in support of facility and capital equipment upgrades for testing and qualification for
the United States Navy. The funding is part of the Navy&#8217;s investment to improve and sustain the Surface Combatant Industrial Base.
The work is being conducted on the Company&#8217;s property in Saratoga Springs, NY, and is in the final stages, nearing completion. The
Company expects to be paid within 30 days after the submission of three milestone invoices, but will not be paid for expenses incurred
in excess of the specified milestone payment limits. The Company has recorded any receipts of milestone payments received as a reduction
from the cost of the assets. The Company incurred an initial cash outlay to satisfy income tax obligations arising from the value of the
milestone payments received. The cash outlay arising from federal income tax obligations is expected to be recaptured in future periods.
Until recaptured, estimated tax obligations associated with the receipt of milestone payments are recorded on the balance sheet and included
in deferred tax assets. As of March 31, 2025, net deferred tax assets include a deferred tax asset of $888,032 associated with milestone
reimbursements received totaling $4,228,722. Included in property, plant, and equipment at March 31, 2025 was $2,535,297 not yet reimbursed
for facility and capital upgrades under the funding award, compared to $965,392 in spending not yet reimbursed included in property, plant,
and equipment at June 30, 2024. Included in accounts payable at March 31, 2025 was approximately $25,000 for facility and capital upgrades
eligible to be reimbursed under the funding award compared to $272,560 included in accounts payable at June 30, 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In June 2024, the Company notified the third-party
administrator of the IBEW Local 1799 Pension Fund of its intention to withdraw permanently from the plan. As required by the Employee
Retirement Income Security Act &#8220;ERISA&#8221;, the Company is subject to a termination withdrawal liability. The recorded termination
withdrawal obligation at March 31, 2025 and June 30, 2024 totaled $561,852 and $772,157, respectively, shown within the accounts payable
balance on the Company&#8217;s balance sheets. As the Company was the only remaining contributing employer to the multiemployer pension
plan, its withdrawal constitutes a mass withdrawal termination. Final withdrawal calculations have been completed and are in line with
the established liability as of March 31, 2025.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In December 2024, the Company was awarded $3.4
million in funding in support of facility and capital equipment upgrades. The funding is part of the Navy&#8217;s investment to improve
and sustain the Surface Combatant Industrial Base. The grant is expected to be in force through calendar year 2026. Included in property,
plant, and equipment at March 31, 2025 was $776,329 not yet reimbursed for facility and capital equipment upgrades under the funding
award. Included in accounts payable at March 31, 2025 was approximately $152,701 for facility and capital upgrades eligible to be reimbursed
under the funding award.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/450/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 6. Revenue</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company follows ASC 606 &#8220;Revenue from
Contracts with Customers&#8221; to determine the recognition of revenue. This standard requires entities to assess the products or services
promised in contracts with customers at contract inception to determine the appropriate unit at which to record revenues.&#160;Revenue
is recognized when control of the promised products or services is transferred to customers at an amount that reflects the consideration
to which the entity expects to be entitled to in exchange for those products or services.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Significant judgment is required in determining
the satisfaction of performance obligations.&#160;Revenues from our performance obligations are satisfied over time using the output method
which considers the appraisal of results achieved and milestones reached or units delivered based on contractual shipment terms, typically
shipping point.&#160;Revenue is recognized when, or as, the customer takes control of the product or services.&#160;The output method
best depicts the transfer of control to the customer as the output method represents work completed. Control is typically transferred
to the customer at the shipping point, as the Company has a present right to payment, the customer has legal title to the asset, the customer
has the significant risks and rewards of ownership of the asset, and in most instances the customer has accepted the asset.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Total revenue recognized for the three and nine
months ended March 31, 2025 based on units delivered was $9,557,710 and $27,057,894, respectively, compared to $7,546,422 and $22,189,116
for the same period in fiscal year 2024. Total revenue recognized for the three and nine months ended March 31, 2025 based on milestones
achieved was $745,009 and $7,296,783, respectively, compared to $708,231 and $4,936,292 for the same period in fiscal year 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company offers a standard one-year product
warranty. Product warranties offered by the Company are classified as assurance-type warranties, which means the warranty only guarantees
that the good or service functions as promised. Based on this, the provided warranty is not considered to be a distinct performance obligation.&#160;The
impact of variable consideration has been considered but none identified which would be required to be allocated to the transaction price
as of March 31, 2025. Our payment terms are generally 30-60 days.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Contract liabilities were $21,018,310 and
$9,043,422 as of March 31, 2025 and June 30, 2024, respectively. The increase in contract liabilities is primarily due to the
advance collection of cash on specific contracts, offset in part, by revenue recognized. Of the $9,043,422 that was in contract
liabilities as of June 30, 2024, $3,490,436 has been recognized in revenue as of the nine months ended March 31, 2025. The Company
used the practical expedient to expense incremental costs incurred to obtain a contract when the contract term is less than one
year.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company&#8217;s backlog at March 31, 2025
totaling approximately $138 million is currently estimated to be recognized in the following fiscal years: 7.0% in 2025; 35.9% in 2026;
12.3% in 2027; 44.8% thereafter. The timing of supplier deliveries of material, production schedules, the completion of engineering
deliverables, among other factors, could cause these estimates to change.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenuesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Recently Issued Accounting Standards<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract', window );"><strong>Recently Issued Accounting Standards [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Recently Issued Accounting Standards</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Note 7. Recently Issued Accounting Standards</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Recent Accounting Pronouncements Not Yet Adopted</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In December 2023, FASB issued ASU 2023-09,&#160;&#8220;Income
Taxes&#160;(Topic 740):&#160;Improvements to Income Tax Disclosures,&#8221; to enhance the transparency and decision usefulness of income
tax disclosures. The amendments in ASU 2023-09 provide improvements primarily related to the rate reconciliation and income taxes paid
information included in income tax disclosures. The Company would be required to disclose additional information regarding reconciling
items equal to or greater than five percent of the amount computed by multiplying pretax income (loss) by the applicable statutory tax
rate. Additionally, the Company would be required to disclose income taxes paid (net of refunds received) disaggregated by individual jurisdictions,
when the taxes paid in an individual jurisdiction is equal to or greater than five percent of the Company&#8217;s total income taxes paid
(net of refunds received). The amendments in ASU 2023-09 are effective for the annual period beginning July
1, 2025. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. The
Company will evaluate the impact of ASU 2023-09 on its financial statements.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In November 2023, the FASB issued ASU 2023-07,&#160;&#8220;Segment
Reporting (Topic 280): Improvements to Reportable Segment Disclosures,&#8221; which provides updates to qualitative and quantitative reportable
segment disclosure requirements, including enhanced disclosures about significant segment expenses and increased interim disclosure requirements,
among others. The amendments in ASU 2023-07 are effective for fiscal years beginning after December 15, 2023, and interim periods within
fiscal years beginning after December 15, 2024. Early adoption is permitted, and the amendments should be applied retrospectively. The
adoption of ASU 2023-07 is not expected to have a significant impact on the financial statements. The Company is currently evaluating
the impact of this new guidance on its financial statements.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In November 2024, the FASB issued ASU 2024-03,
&#8220;Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures (Subtopic 220-40)&#8221; with the
goal of improving disclosures about a public business entity&#8217;s expenses and address requests from investors for more detailed information
about the types of expenses in captions that are commonly presented on the face of the financial statements such as cost of sales, SG&amp;A,
and research and development. These amendments are effective for annual reporting periods beginning after December 15, 2026 and interim
reporting periods beginning after December 15, 2027. Early adoption is permitted and should be applied either prospectively to financial
statements issued for reporting periods after the effect date of the updates or retrospectively to any or all prior periods presented
in the financial statements. The Company will evaluate the impact of this guidance on its financial statements.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Recent Accounting Pronouncements Adopted</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">None</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-6<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 250<br> -Publisher FASB<br> -URI https://asc.fasb.org/250/tableOfContent<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Stock Ownership Plan<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract', window );"><strong>Employee Stock Ownership Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_EmployeeStockOwnershipPlanTextBlock', window );">Employee Stock Ownership Plan</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in">Note 8. Employee
Stock Ownership Plan</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company sponsors a leveraged employee
stock ownership plan (the "ESOP") that covers all nonunion employees who work 1,000 or more hours per year and are
employed on June 30. The Company makes annual contributions to the ESOP equal to the ESOP's debt service less dividends on
unallocated shares received by the ESOP. All dividends on unallocated shares received by the ESOP are used to pay debt service.
Dividends on allocated ESOP shares are recorded as a reduction of retained earnings. As the debt is repaid, shares are released and
allocated to active employees, based on the proportion of debt service paid in the year. The Company accounts for its ESOP in
accordance with FASB ASC 718-40 &#8220;Share-based Payments.&#8221; Accordingly, the shares purchased by the ESOP are reported as Unearned ESOP
shares in the balance sheet and the statement of changes in stockholders&#8217; equity. As shares are released or
committed-to-be-released, the Company reports compensation expense equal to the current average market price of the shares, and the
shares become outstanding for earnings-per-share (EPS) computations. ESOP compensation expense was $149,036 and $128,300 for the
three-month periods ended March 31, 2025 and 2024, respectively. ESOP compensation expense was $435,298 and $311,664 for the
nine-month periods ended March 31, 2025 and 2024, respectively.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">The ESOP shares as of March
31, 2025 and 2024 were as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; text-indent: 0in">Allocated shares</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">383,812</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">428,974</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Committed-to-be-released shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">16,253</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">16,619</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Unreleased shares</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">195,234</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">217,026</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt">Total shares held by the ESOP</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">595,299</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">662,619</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Fair value of unreleased shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,296,698</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,479,907</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-indent: -1in"><span style="text-underline-style: double">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company may at times be required to repurchase
shares at the ESOP participants&#8217; request at the shares&#8217; fair market value. During the three and nine months ended March 31,
2025 and 2024, the Company did not repurchase shares previously held by the ESOP.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The ESOP allows for eligible participants to
take whole share distributions from the Plan on specific dates in accordance with the provision of the Plan. Share distributions from
the ESOP during the nine months ended March 31, 2025 and 2024 totaled 67,320 and 55,985 shares, respectively.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_EmployeeStockOwnershipPlanTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for employee stock ownership plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_EmployeeStockOwnershipPlanTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pay vs Performance Disclosure - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_PvpTable', window );"><strong>Pay vs Performance Disclosure</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">$ 1,704,487<span></span>
</td>
<td class="nump">$ 1,031,930<span></span>
</td>
<td class="nump">$ 5,211,303<span></span>
</td>
<td class="nump">$ 3,921,844<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_PvpTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 402<br> -Subsection v<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_PvpTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Insider Trading Arrangements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_NonRule10b51ArrAdoptedFlag', window );">Non-Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_Rule10b51ArrTrmntdFlag', window );">Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_NonRule10b51ArrTrmntdFlag', window );">Non-Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_NonRule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_NonRule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_Rule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_Rule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_Rule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_Rule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_TradingArrByIndTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TradingArrByIndTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investment Securities (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentsAbstract', window );"><strong>Investment Securities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock', window );">Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities</a></td>
<td class="text">The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at March 31, 2025 and June 30, 2024 are as follows:<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Gross</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Gross</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Amortized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unrealized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unrealized</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Fair</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Cost</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Gains</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Losses</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Value</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">March 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 40%">Certificates of deposit</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">23,492,000</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-9">&#8212;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-10">&#8212;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">23,492,000</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,134,518</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,988</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(468</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,143,038</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">U.S. Treasury bills</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-11">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-12">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-13">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-14">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">24,626,518</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">8,988</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(468</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">24,635,038</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">June 30, 2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Certificates of deposit</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">17,651,000</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-15">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-16">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">17,651,000</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">709,059</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,824</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,313</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">711,570</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; text-align: left">U.S. Treasury bills</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">510,288</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,773</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-17">&#8212;</div></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">516,061</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">18,870,347</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">11,597</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(3,313</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">18,878,631</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock', window );">Schedule of Contractual Maturities of Available-for-Sale Debt Securities</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of March 31, 2025 and June 30, 2024, the remaining
contractual maturities of available-for-sale debt securities were as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Years to Maturity</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Less than</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">One to</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">One Year</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right">Five Years</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td><td style="border-bottom: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Total</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-decoration: underline">March 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 55%; padding-bottom: 1pt">Available-for-sale</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right">23,139,022</td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right">1,496,016</td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; text-align: right">24,635,038</td><td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-decoration: underline">June 30, 2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Available-for-sale</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">17,889,582</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">989,049</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">18,878,631</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income Per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net Income Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Denominators of the Basic and Diluted Earnings Per Share</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the three month
periods ended March 31:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right">2025</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right">2024</td>
    <td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Numerator:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 70%; padding-bottom: 2.5pt">Net income</td>
    <td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: black 2.25pt double">$</td>
    <td style="width: 12%; border-bottom: black 2.25pt double; text-align: right">1,704,487</td>
    <td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: black 2.25pt double">$</td>
    <td style="width: 12%; border-bottom: black 2.25pt double; text-align: right">1,031,930</td>
    <td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Denominator:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Basic EPS:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,796,758</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,706,633</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(200,652</td>
    <td style="white-space: nowrap">)</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(222,566</td>
    <td style="white-space: nowrap">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">3,794</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">7,778</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average ESOP shares earned during the period</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">60</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">61</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Denominator for basic earnings per common shares &#8211;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,599,960</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,491,906</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted EPS:</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,796,758</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">2,706,633</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(200,652</td>
    <td style="white-space: nowrap">)</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">(222,566</td>
    <td style="white-space: nowrap">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">3,794</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">7,778</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Weighted average ESOP shares earned during the period</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">60</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">61</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average dilutive effect of stock options</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">99,714</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: black 1pt solid">&#160;</td>
    <td style="border-bottom: black 1pt solid; text-align: right">80,015</td>
    <td style="white-space: nowrap; padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Denominator for diluted earnings per common shares &#8211;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td style="text-align: right">&#160;</td>
    <td style="white-space: nowrap">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,699,674</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: black 2.25pt double">&#160;</td>
    <td style="border-bottom: black 2.25pt double; text-align: right">2,571,921</td>
    <td style="white-space: nowrap; padding-bottom: 2.5pt">&#160;</td></tr>
  </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the nine month
periods ended March 31:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Numerator:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="width: 70%; text-align: left; padding-bottom: 2.5pt">Net income</td><td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right">5,211,303</td><td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="width: 1%; padding-bottom: 2.5pt">&#160;</td>
    <td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right">3,921,844</td><td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Denominator:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Basic EPS:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,733,958</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,702,633</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(211,487</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(233,646</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">41,606</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,606</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average ESOP shares earned during the period</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,437</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,560</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 20pt">Denominator for basic earnings per common shares &#8211;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,569,514</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,480,153</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Diluted EPS:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Common shares outstanding, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,733,958</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,702,633</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(211,487</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(233,646</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">41,606</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,606</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">Weighted average ESOP shares earned during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,437</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,560</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; padding-left: 20pt">Weighted average dilutive effect of stock options</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">99,414</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">39,555</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Denominator for diluted earnings per common shares &#8211;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 2.5pt; padding-left: 40pt">Weighted average common shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,668,928</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,519,708</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Stock Based Compensation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of Weighted Average Assumptions of Option Award</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The table below outlines the weighted average
assumptions that the Company used to calculate the fair value of each option award for the nine months ended March 31, 2025 and 2024.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; text-align: left">Dividend yield</td><td style="width: 1%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">3.79%</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">3.63%</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Company&#8217;s expected volatility</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">32.85%</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">31.20%</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Risk-free interest rate</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">4.35%</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">4.39%</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Expected term</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">5.1 yrs</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">5.3 yrs</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Weighted average fair value per share of options granted during the period</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">5.37</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">4.03</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Stock Option Activity</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table summarizes stock option activity
during the nine months ended March 31, 2025:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="15" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Employee Stock Option Plans</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Number of</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Shares</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Remaining</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Aggregate</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Subject</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Exercise</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Contractual</td><td>&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center">Intrinsic</td></tr> <tr style="vertical-align: bottom"> <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Price</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Term</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Value</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 48%">Balance at July 1, 2024</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right">322,056</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">$</td><td style="width: 8%; text-align: right">18.41</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right">6.59</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td> <td style="width: 1%; text-align: left">&#160;</td><td style="width: 8%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-18">&#160;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td>Granted</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">79,000</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">21.79</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">9.29</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Exercised</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">(82,600</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td> <td style="text-align: left">$</td><td style="text-align: right">17.94</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-19">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1pt">Forfeited or expired</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(500</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">)</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">16.54</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><div style="-sec-ix-hidden: hidden-fact-20">&#8212;</div></td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt">Outstanding at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">317,956</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.37</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">6.83</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,471,791</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 2.5pt">Vested or expected to vest at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">302,783</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.10</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">6.64</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,363,682</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt">Exercisable at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">162,556</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.38</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">4.86</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,262,070</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr> </table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock', window );">Schedule of Changes in Non-Vested Stock Options</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The following table summarizes changes in non-vested stock options
during the nine months ended March 31, 2025:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; margin-left: auto; margin-right: auto; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted Number</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">of Shares</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Grant Date</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Subject</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Fair Value</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">(per Option)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Non-vested at July 1, 2024</td><td style="width: 3%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">147,300</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 3%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">4.15</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">79,000</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">5.37</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(70,400</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">4.16</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Forfeited or expired</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(500</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">)</td><td style="border-bottom: Black 1pt solid">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">4.03</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Non-vested at March 31, 2025</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">155,400</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">4.76</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in outstanding nonvested shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (f)(2)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Stock Ownership Plan (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract', window );"><strong>Employee Stock Ownership Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock', window );">Schedule of ESOP Shares</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">The ESOP shares as of March
31, 2025 and 2024 were as follows:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">&#160;</p>

<table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2025</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">March 31, 2024</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; text-indent: 0in">Allocated shares</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">383,812</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">428,974</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>Committed-to-be-released shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">16,253</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">16,619</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Unreleased shares</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">195,234</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">217,026</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt">Total shares held by the ESOP</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">595,299</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">662,619</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Fair value of unreleased shares</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,296,698</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,479,907</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the details pertaining to each employee stock ownership plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Investment Securities - Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradingSecuritiesDebtAmortizedCost', window );">Amortized Cost</a></td>
<td class="nump">$ 24,626,518<span></span>
</td>
<td class="nump">$ 18,870,347<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">8,988<span></span>
</td>
<td class="nump">11,597<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(468)<span></span>
</td>
<td class="num">(3,313)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Fair Value</a></td>
<td class="nump">24,635,038<span></span>
</td>
<td class="nump">18,878,631<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CertificatesOfDepositMember', window );">Certificates of deposit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradingSecuritiesDebtAmortizedCost', window );">Amortized Cost</a></td>
<td class="nump">23,492,000<span></span>
</td>
<td class="nump">17,651,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Fair Value</a></td>
<td class="nump">23,492,000<span></span>
</td>
<td class="nump">17,651,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_MunicipalBondsMember', window );">Municipal bonds [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradingSecuritiesDebtAmortizedCost', window );">Amortized Cost</a></td>
<td class="nump">1,134,518<span></span>
</td>
<td class="nump">709,059<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">8,988<span></span>
</td>
<td class="nump">5,824<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(468)<span></span>
</td>
<td class="num">(3,313)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Fair Value</a></td>
<td class="nump">1,143,038<span></span>
</td>
<td class="nump">711,570<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasuryBillSecuritiesMember', window );">U.S. Treasury bills [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradingSecuritiesDebtAmortizedCost', window );">Amortized Cost</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">510,288<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">5,773<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Fair Value</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 516,061<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481830/320-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInvestmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column B)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column D))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 1)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column B)(Footnote 10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 53: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 54: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 55: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 56: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 57: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 58: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 59: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 60: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 5)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 61: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 62: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 63: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 64: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br><br>Reference 65: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInvestmentsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TradingSecuritiesDebtAmortizedCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortized cost of investments in debt securities classified as trading.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradingSecuritiesDebtAmortizedCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_CertificatesOfDepositMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_CertificatesOfDepositMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_MunicipalBondsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_MunicipalBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasuryBillSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_USTreasuryBillSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Contractual Maturities of Available-for-Sale Debt Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">Less than One Year</a></td>
<td class="nump">$ 23,139,022<span></span>
</td>
<td class="nump">$ 17,889,582<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue', window );">One to Five Years</a></td>
<td class="nump">1,496,016<span></span>
</td>
<td class="nump">989,049<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Available-for-sale debt securities</a></td>
<td class="nump">$ 24,635,038<span></span>
</td>
<td class="nump">$ 18,878,631<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477268/942-320-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477268/942-320-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481830/320-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income Per Share (Details) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net Income Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Options to purchase shares</a></td>
<td class="nump">2,500<span></span>
</td>
<td class="nump">60,766<span></span>
</td>
<td class="nump">2,500<span></span>
</td>
<td class="nump">60,766<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income Per Share - Schedule of Denominators of the Basic and Diluted Earnings Per Share (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract', window );"><strong>Numerator:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (in Dollars)</a></td>
<td class="nump">$ 1,704,487<span></span>
</td>
<td class="nump">$ 1,031,930<span></span>
</td>
<td class="nump">$ 5,211,303<span></span>
</td>
<td class="nump">$ 3,921,844<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAbstract', window );"><strong>Basic EPS:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_CommonSharesOutstandingBasic', window );">Common shares outstanding, beginning of period</a></td>
<td class="nump">2,796,758<span></span>
</td>
<td class="nump">2,706,633<span></span>
</td>
<td class="nump">2,733,958<span></span>
</td>
<td class="nump">2,702,633<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan', window );">Unearned ESOP shares</a></td>
<td class="num">(200,652)<span></span>
</td>
<td class="num">(222,566)<span></span>
</td>
<td class="num">(211,487)<span></span>
</td>
<td class="num">(233,646)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased', window );">Weighted average common shares issued during the period</a></td>
<td class="nump">3,794<span></span>
</td>
<td class="nump">7,778<span></span>
</td>
<td class="nump">41,606<span></span>
</td>
<td class="nump">5,606<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesIssuedBasic', window );">Weighted average ESOP shares earned during the period</a></td>
<td class="nump">60<span></span>
</td>
<td class="nump">61<span></span>
</td>
<td class="nump">5,437<span></span>
</td>
<td class="nump">5,560<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation', window );">Weighted average common shares</a></td>
<td class="nump">2,599,960<span></span>
</td>
<td class="nump">2,491,906<span></span>
</td>
<td class="nump">2,569,514<span></span>
</td>
<td class="nump">2,480,153<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDilutedAbstract', window );"><strong>Diluted EPS:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_CommonSharesOutstandingDiluted', window );">Common shares outstanding, beginning of period</a></td>
<td class="nump">2,796,758<span></span>
</td>
<td class="nump">2,706,633<span></span>
</td>
<td class="nump">2,733,958<span></span>
</td>
<td class="nump">2,702,633<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan', window );">Unearned ESOP shares</a></td>
<td class="num">(200,652)<span></span>
</td>
<td class="num">(222,566)<span></span>
</td>
<td class="num">(211,487)<span></span>
</td>
<td class="num">(233,646)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased', window );">Weighted average common shares issued during the period</a></td>
<td class="nump">3,794<span></span>
</td>
<td class="nump">7,778<span></span>
</td>
<td class="nump">41,606<span></span>
</td>
<td class="nump">5,606<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Weighted average ESOP shares earned during the period</a></td>
<td class="nump">60<span></span>
</td>
<td class="nump">61<span></span>
</td>
<td class="nump">5,437<span></span>
</td>
<td class="nump">5,560<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Weighted average dilutive effect of stock options</a></td>
<td class="nump">99,714<span></span>
</td>
<td class="nump">80,015<span></span>
</td>
<td class="nump">99,414<span></span>
</td>
<td class="nump">39,555<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average common shares</a></td>
<td class="nump">2,699,674<span></span>
</td>
<td class="nump">2,571,921<span></span>
</td>
<td class="nump">2,668,928<span></span>
</td>
<td class="nump">2,519,708<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_CommonSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Common shares outstanding, beginning of period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_CommonSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_CommonSharesOutstandingDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Common shares outstanding, beginning of period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_CommonSharesOutstandingDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480454/718-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of capital stock issued (purchased by employees) in connection with an employee stock ownership plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480520/718-40-45-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock subject to repurchase or cancellation determined by relating the portion of time within a reporting period that these shares have been outstanding to the total time in that period. Common stock subject to repurchase are outstanding common shares that are contingently returnable (that is, subject to recall).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of employee stock ownership plan (ESOP) shares that have not been committed to be released determined by relating the portion of time within a reporting period that these shares have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480520/718-40-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesIssuedBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents the weighted average total number of shares issued throughout the period including the first (beginning balance outstanding) and last (ending balance outstanding) day of the period before considering any reductions (for instance, shares held in treasury) to arrive at the weighted average number of shares outstanding. Weighted average relates to the portion of time within a reporting period that common shares have been issued and outstanding to the total time in that period. Such concept is used in determining the weighted average number of shares outstanding for purposes of calculating earnings per share (basic).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesIssuedBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Based Compensation (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 93,223<span></span>
</td>
<td class="nump">$ 75,420<span></span>
</td>
<td class="nump">$ 286,256<span></span>
</td>
<td class="nump">$ 206,575<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredOtherTaxExpenseBenefit', window );">Deferred tax benefit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,058<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Unrecognized compensation cost</a></td>
<td class="nump">$ 340,519<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 340,519<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Period in which compensation cost will be recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 9 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Shares remain available for grant (in Shares)</a></td>
<td class="nump">2,469<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,469<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_DividendPayableAmountPerShare', window );">Dividends per share (in Dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.75<span></span>
</td>
<td class="nump">$ 0.475<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate intrinsic value of options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 841,603<span></span>
</td>
<td class="nump">$ 186,186<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=esp_NonQualifiedStockOptionsMember', window );">Non-qualified Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 8,362<span></span>
</td>
<td class="nump">8,179<span></span>
</td>
<td class="nump">23,783<span></span>
</td>
<td class="nump">26,724<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredOtherTaxExpenseBenefit', window );">Deferred tax benefit</a></td>
<td class="nump">1,756<span></span>
</td>
<td class="nump">$ 1,718<span></span>
</td>
<td class="nump">4,994<span></span>
</td>
<td class="nump">$ 5,612<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Unrecognized compensation cost</a></td>
<td class="nump">28,847<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,847<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=esp_IncentiveStockOptionMember', window );">Incentive Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Unrecognized compensation cost</a></td>
<td class="nump">$ 311,672<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 311,672<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Shares exercised options (in Shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">103,925<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Shares outstanding options (in Shares)</a></td>
<td class="nump">293,606<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">293,606<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=esp_TwoThousandSeventeenPlanMember', window );">2017 Plan [Member] | Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Authorized shares under plan (in Shares)</a></td>
<td class="nump">400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=esp_TwoThousandSeventeenPlanMember', window );">2017 Plan [Member] | Non-Employee Directors [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease', window );">Aggregate number of common stock (in Shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">133,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=esp_TwoThousandSeventeenPlanMember', window );">2017 Plan [Member] | Maximum [Member] | Non-Employee Directors [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease', window );">Aggregate number of common stock (in Shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear', window );">Percentage of total number of shares subject to options or awards, single fiscal year</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">33 1/3%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=esp_TwoThousandSeventeenPlanMember', window );">2017 Plan [Member] | Maximum [Member] | Individual Employee [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease', window );">Aggregate number of common stock (in Shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=esp_TwoThousandSevenPlanMember', window );">2007 Plan [Member] | Restricted Stock Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems', window );"><strong>Stock Based Compensation [Line Item]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber', window );">Outstanding shares (in Shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24,350<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_DividendPayableAmountPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The per share amount of a dividend declared, and paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_DividendPayableAmountPerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of total number of shares subject to options or awards, single fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479983/718-10-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredOtherTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of other deferred income tax expense (benefit) pertaining to income (loss) from continuing operations. For example, but not limited to, acquisition-date income tax benefits or expenses recognized from changes in the acquirer's valuation allowance for its previously existing deferred tax assets resulting from a business combination and adjustments to beginning-of-year balance of a valuation allowance because of a change in circumstance causing a change in judgment about the realizability of the related deferred tax asset in future periods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredOtherTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of increase (decrease) of non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=esp_NonQualifiedStockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=esp_NonQualifiedStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=esp_IncentiveStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=esp_IncentiveStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=esp_TwoThousandSeventeenPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=esp_TwoThousandSeventeenPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=esp_NonEmployeeDirectorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=esp_NonEmployeeDirectorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=esp_IndividualEmployeeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=esp_IndividualEmployeeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=esp_TwoThousandSevenPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=esp_TwoThousandSevenPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=esp_RestrictedStockPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=esp_RestrictedStockPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Based Compensation - Schedule of Weighted Average Assumptions of Option Award (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Schedule of Weighted Average Assumptions of Option Award [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Dividend yield</a></td>
<td class="nump">3.79%<span></span>
</td>
<td class="nump">3.63%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Company&#8217;s expected volatility</a></td>
<td class="nump">32.85%<span></span>
</td>
<td class="nump">31.20%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate</a></td>
<td class="nump">4.35%<span></span>
</td>
<td class="nump">4.39%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected term</a></td>
<td class="text">5 years 1 month 6 days<span></span>
</td>
<td class="text">5 years 3 months 18 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average fair value per share of options granted during the period (in Dollars per share)</a></td>
<td class="nump">$ 5.37<span></span>
</td>
<td class="nump">$ 4.03<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Based Compensation - Schedule of Stock Option Activity (Details) - Equity Option [Member]<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Jul. 01, 2024 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Schedule of Stock Option Activity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of Shares Subject to Option, Granted | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">79,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Granted | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21.79<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted', window );">Weighted Average Remaining Contractual Term, Granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">9 years 3 months 14 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Number of Shares Subject to Option, Exercised | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(82,600)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercised | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17.94<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm', window );">Weighted Average Remaining Contractual Term, Exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Number of Shares Subject to Option, Forfeited or expired | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(500)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Forfeited or expired | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 16.54<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm', window );">Weighted Average Remaining Contractual Term, Forfeited or expired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of Shares Subject to Option, Ending | shares</a></td>
<td class="nump">322,056<span></span>
</td>
<td class="nump">317,956<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Ending | $ / shares</a></td>
<td class="nump">$ 18.41<span></span>
</td>
<td class="nump">$ 19.37<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Term, Ending</a></td>
<td class="text">6 years 7 months 2 days<span></span>
</td>
<td class="text">6 years 9 months 29 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate Intrinsic Value, Ending | $</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 2,471,791<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Number of Shares Subject to Option, Vested or expected to vest | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">302,783<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Vested or expected to vest | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 19.1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Term, Vested or expected to vest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 years 7 months 20 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Aggregate Intrinsic Value, Vested or expected to vest | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,363,682<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of Shares Subject to Option, Exercisable | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">162,556<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercisable | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 19.38<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Term, Exercisable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years 10 months 9 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Aggregate Intrinsic Value, Exercisable | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,262,070<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represent the weighted average remaining contractual term, Exercised.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represent the weighted average remaining contractual term, Forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represent the weighted average remaining contractual term, Granted.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price of options that were either forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (e)(1)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Based Compensation - Schedule of Changes in Non-Vested Stock Options (Details)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract', window );"><strong>Schedule of Changes in Non-Vested Stock Options [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares', window );">Weighted Number of Shares Subject to Option, Non-vested Beginning | shares</a></td>
<td class="nump">147,300<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value (per Option), Non-vested Beginning | $ / shares</a></td>
<td class="nump">$ 4.15<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Weighted Number of Shares Subject to Option, Granted | shares</a></td>
<td class="nump">79,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value (per Option), Granted | $ / shares</a></td>
<td class="nump">$ 5.37<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares', window );">Weighted Number of Shares Subject to Option, Vested | shares</a></td>
<td class="num">(70,400)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value (per Option), Vested | $ / shares</a></td>
<td class="nump">$ 4.16<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares', window );">Weighted Number of Shares Subject to Option, Forfeited or expired | shares</a></td>
<td class="num">(500)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value (per Option), Forfeited or expired | $ / shares</a></td>
<td class="nump">$ 4.03<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares', window );">Weighted Number of Shares Subject to Option, Non-vested Ending | shares</a></td>
<td class="nump">155,400<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value (per Option), Non-vested Ending | $ / shares</a></td>
<td class="nump">$ 4.76<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of non-vested options outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of non-vested options forfeited.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of non-vested options forfeited.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of non-vested options outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options vested.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of options vested.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherCommitmentsLineItems', window );"><strong>Commitments and Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Contingent liabilities on outstanding standby letters of credit agreements</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CustomerFunds', window );">Funding amount</a></td>
<td class="nump">7,400,000<span></span>
</td>
<td class="nump">$ 3,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Deferred tax asset</a></td>
<td class="nump">888,032<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Total deferred tax asset</a></td>
<td class="nump">4,228,722<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant, and equipment amount</a></td>
<td class="nump">2,535,297<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">965,392<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrentAndNoncurrent', window );">Accounts payable</a></td>
<td class="nump">25,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">272,560<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_TerminationWithdrawalObligation', window );">Termination withdrawal obligation</a></td>
<td class="nump">561,852<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 772,157<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=esp_NavysInvestmentMember', window );">Navy&#8217;s Investment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherCommitmentsLineItems', window );"><strong>Commitments and Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant, and equipment amount</a></td>
<td class="nump">776,329<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrentAndNoncurrent', window );">Accounts payable</a></td>
<td class="nump">$ 152,701<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_TerminationWithdrawalObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of Termination withdrawal obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_TerminationWithdrawalObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CustomerFunds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of amounts received from and refundable to customers unless used by them to obtain goods and services from the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CustomerFunds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-15<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherCommitmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherCommitmentsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=esp_NavysInvestmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=esp_NavysInvestmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">$ 10,302,719<span></span>
</td>
<td class="nump">$ 8,254,653<span></span>
</td>
<td class="nump">$ 34,354,677<span></span>
</td>
<td class="nump">$ 27,125,408<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue recognized contract liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,490,436<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,043,422<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_ContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member', window );">ASC 606 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="nump">21,018,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,018,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,043,422<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member', window );">ASC 606 [Member] | Units Delivered [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">9,557,710<span></span>
</td>
<td class="nump">7,546,422<span></span>
</td>
<td class="nump">27,057,894<span></span>
</td>
<td class="nump">22,189,116<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member', window );">ASC 606 [Member] | Milestones Achieved [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">745,009<span></span>
</td>
<td class="nump">$ 708,231<span></span>
</td>
<td class="nump">7,296,783<span></span>
</td>
<td class="nump">$ 4,936,292<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member', window );">ASC 606 [Member] | Order or Production Backlog [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets</a></td>
<td class="nump">$ 138,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 138,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_BacklogPercentageOfRecognitionsYearOne', window );">Backlog amount to be recognized, 2025</a></td>
<td class="nump">7.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_BacklogPercentageOfRecognitionsYearTwo', window );">Backlog amount to be recognized, 2026</a></td>
<td class="nump">35.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_BacklogPercentageOfRecognitionsYearThree', window );">Backlog amount to be recognized, 2027</a></td>
<td class="nump">12.30%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.30%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_BacklogPercentageOfRecognitions', window );">Backlog amount to be recognized</a></td>
<td class="nump">44.80%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44.80%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_BacklogPercentageOfRecognitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of backlog that will be recognized within three years of the operating cycle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_BacklogPercentageOfRecognitions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_BacklogPercentageOfRecognitionsYearOne">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of backlog that will be recognized within one year of the operating cycle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_BacklogPercentageOfRecognitionsYearOne</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_BacklogPercentageOfRecognitionsYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of backlog that will be recognized within two years of the operating cycle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_BacklogPercentageOfRecognitionsYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_BacklogPercentageOfRecognitionsYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of backlog that will be recognized within two years of the operating cycle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_BacklogPercentageOfRecognitionsYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ContractTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_ContractTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=esp_UnitsDeliveredMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=esp_UnitsDeliveredMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=esp_MilestonesAchievedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=esp_MilestonesAchievedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Stock Ownership Plan (Details) - Employee Stock Ownership Plan [Member]<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems', window );"><strong>Employee Stock Ownership Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_EmployeeStockOwnershipPlanHoursWorked', window );">Number of hours worked per year to qualify for the plan</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense', window );">ESOP compensation expense | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 149,036<span></span>
</td>
<td class="nump">$ 128,300<span></span>
</td>
<td class="nump">$ 435,298<span></span>
</td>
<td class="nump">$ 311,664<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan', window );">Shares distributed (in Shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">67,320<span></span>
</td>
<td class="nump">55,985<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_EmployeeStockOwnershipPlanHoursWorked">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Minimum number of hours worked per year for nonunion employees to participate in ESOP.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">esp_EmployeeStockOwnershipPlanHoursWorked</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>esp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of plan compensation cost recognized during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period to an employee benefit plan, such as a defined contribution or defined benefit plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis=esp_EmployeeStockOwnershipPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis=esp_EmployeeStockOwnershipPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Employee Stock Ownership Plan - Schedule of ESOP Shares (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract', window );"><strong>Schedule of ESOP Shares [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares', window );">Allocated shares</a></td>
<td class="nump">383,812<span></span>
</td>
<td class="nump">428,974<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares', window );">Committed-to-be-released shares</a></td>
<td class="nump">16,253<span></span>
</td>
<td class="nump">16,619<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares', window );">Unreleased shares</a></td>
<td class="nump">195,234<span></span>
</td>
<td class="nump">217,026<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP', window );">Total shares held by the ESOP</a></td>
<td class="nump">595,299<span></span>
</td>
<td class="nump">662,619<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue', window );">Fair value of unreleased shares (in Dollars)</a></td>
<td class="nump">$ 5,296,698<span></span>
</td>
<td class="nump">$ 5,479,907<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of unearned shares held by the employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The shares or units in an ESOP trust that have been assigned to individual participant accounts based on a known formula. IRS rules require allocations to be nondiscriminatory generally based on compensation, length of service, or a combination of both. For any particular participant such shares or units may be vested, unvested, or partially vested.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The shares that, although not legally released, will be released by a future scheduled and committed debt service payment and will be allocated to employees for service rendered in the current accounting period. The ESOP documents typically define the period of service to which the shares relate. ESOP shares are released to compensate employees directly, to settle employer liabilities for other employee benefits, and to replace dividends on allocated shares that are used for debt service.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Shares contributed to the ESOP that have not yet been released, committed to be released, or allocated to participant accounts. Suspense shares generally collateralize ESOP debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the allocated, committed-to-be-released and suspense shares of the entity held by the plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-20<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480459/718-40-55-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480489/718-40-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>46
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( %& K%I&QTU(E0   ,T    0    9&]C4')O<',O87!P+GAM
M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ)
M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$,
M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2<?J]P<"A#G>B4^BQ-+.9<K!?^+
M4\L54Y[FRF_\9 6_![H74$L#!!0    ( %& K%J=MWWD\0   "L"   1
M9&]C4')O<',O8V]R92YX;6S-DL].PS ,AU\%Y=XZ354.4=?+$">0D)@$XA8E
MWA;1_%%BU.[M:<O6@> !.,;^Y?-GR:V.4H>$3RE$3&0QWXRN]UGJN&%'HB@!
MLCZB4[F<$GYJ[D-RBJ9G.D!4^ET=$ 3GM^"0E%&D8 86<26RKC5:ZH2*0CKC
MC5[Q\2/U"\QHP!X=>LI0E16P;IX83V/?PA4PPPB3RU\%-"MQJ?Z)73K SLDQ
MVS4U#$,YU$MNVJ&"U\>'YV7=POI,RFN<?F4KZ11QPRZ37^KMW>Z>=8*+IN!-
M48F=X)(+6==OL^L/OZNP"\;N[3\S;KX97P2[%G[=1?<)4$L#!!0    ( %&
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
MA(EIQJF6<#>$.#WRQ)I+U$9JP2179QT-FN9.Q\_C+[-X4A%_BFY%HA<*C9.
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
M"U60!, I_:IP&#+*2(#I /Z.*8F?*G=5\0RHS-Y[(P:5$5JIMBTY@ U#'@Z
M[9B2^*GR6H%*5_IIC#8@SG23:\/N&\.>8U1([81N\R%L&?B0#EODMB%C.*01
M'P#>$2?Y!G,V6?9DUV:VB,8L"1+>QVA;\I '-!DB=]*Q(/'3X/OYQ=OY^_GM
M_'*!+CZ\0XO;J]D?OUV]?W=YL_@97?[GX_SVOT[P+\J/+^7M. D=0Q(_15Y\
M53<;\62DC3-@F_XHCCA(D?YDV88LXH0.;I$=49+8+^+35-6RVW:<NH5XV?:[
M)^:%O!U'W#$O\5/O OHQPUK-HM]"(^U>2#9_QAR']C*R[1(:DW! ']".9:F?
M9?\2J3!MN+._LBF3)RRB?6IUV1%"@@&RHAVQ4C^Q7BZNKGV%36V6I%$8QA9
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
M1MI!U,=TW5&\J$ZZ)5?ZW*R:F?ZR 6$"]/,5Y^JQ8P[/YELI_@=02P,$%
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
M?VX=G634B[]V=$[*MIZ4+9B*K=]5G;TGX_:^&YVW=<_8Z]+BXYD0PG/TTK0
MJ<!"W_ZLK8R>8/K:$U@9?0>S@4TKZ7P\&??QY\-S3+O%F'L@G>NKI W(.!;&
MEL[*Z/E"WQ4%5D8L^-"78-)Y>#+NX=?Q,8YD%IU-2(O7S%/,,D\1_?-%BQ(]
M%.9,3X>-3$<%5C)J[.KG9P=UJ2RV]0EI"9;HD*GFK.;TM#F%O<:+57U8J3U?
MXT5@>_X>+][79Y7SCKXY\OT8%MLX*U$B'Z"I2L(,%<TI:G.C\GU]3'B?*Y6G
M]>5.AI$L*@#\_I#GZOFF:N!TEKW\!U!+ P04    " !1@*Q:)+%U,-\+   /
M=0  &    'AL+W=O<FMS:&5E=',O<VAE970U+GAM;+6=:W/;N!6&_PK'[;3)
M3!03%]Y2QS,;\];.M)N)F^UG1F)LS4JB5Z*=Y-\O*"NB"!R"I/SV2V+9P'-(
MX"5 O >DKKY5V]]W]V59.]_7J\WN_<5]73^\N[S<S>_+=;%[6SV4&_67K]5V
M7=3JX_;N<O>P+8O%OM)Z=<E=U[]<%\O-Q?75_G<?M]=7U6.]6F[*CUMG][A>
M%]L?'\I5]>W]!;OX^8M/R[O[NOG%Y?750W%7WI;UYX>/6_7I\DA9+-?E9K>L
M-LZV_/K^XA?V+O=$4V%?XK=E^6UW\K/3G,J7JOJ]^?#/Q?L+MSFB<E7.ZP91
MJ/^>RIMRM6I(ZCC^.$ OCC&;BJ<__Z2G^Y-7)_.EV)4WU>I_RT5]__XBO' 6
MY=?B<55_JK[EY>&$O(8WKU:[_;_.M^>ROBH\?]S5U?I061W!>KEY_K_X?FB(
MDPI,]%3@API<JR!83P5QJ"#T"D%/!7FH(/5#ZCL'[U#!TRMX/17\0P5?J\#[
MSB$X5 C&ME)XJ!#N>_>Y._9]&1=U<7VUK;XYVZ:THC4_[ 6QKZVZ<+EIM'M;
M;]5?EZI>?7U;%W6IM%COG.JK<W-?;.[*G;/<.+=U-?_]OEHMRNWN[T[RQ^.R
M_N&\^KPI'A?+NER\=F;.Y]O8>?77UU>7M3J0!G<Y/P3]\!R4]P2]J=;KZA""
MJ'TS4+MX6-;%JCG(Y/N\W.V/_&.Q=7XK5H\EP8OMO%_F\\?UXTJUP\+YM;XO
MMXXZ/C40W#=7Z%/I9&H$(*B)G?JIK%4]A4R*[6:YN=L1B-2.^*\:C':/VQ^]
M#979ZW_>E"IV<PBWOWYT;N^+;4D=13YP%)5J[&ZU2R6RH]+X46E\SY$]G _%
MJMC,2Z>HG7\];MXZPGWC<)<+2C[/)']/:D;?IVOF2L$C=G7Y="H4LQP7/!1<
M>MV"L5EPQB6/NJ42 L="/PBXVRV8$CC?%:&O'V!&%)0\$"((NP5SLZ#PPB *
MO+9@I]7%L=7%J%9_U5S2>P6\'M4#SU3OM"D"E_M":#U@C=Y,O.]V#\6\?'^A
M+JA=N7TJ+Z[_]A?FN_^@KE,D+$'"4B0L0\)R$*PC+GD4E_R_B,M*G=@ -TA8
MC(0E2%@JC0M2#21<Z@,.,F8.@G6TY1VUY5FU]1]UW[[<S*LU-:-_L-:=JB D
M+$;"$L_H=!&I*4E*;3Y"!LV0L'SX##KJ\(_J\*WJ>+Y/FW?NTY[5XKRZ4_==
MK]\X&R4@=6-8%]\I 5GQ4P6$A,6^T6*!YVNW"PDR8HJ$94A8/M 6'>D$1^D$
M5NGL[V=)Z5 ZL;*FZ@0)BY&P! E+D; ,"<L#:C2*)..TI,*CI$*KI/;K,Z=Z
M:-R8G5-^+[?SY:Y<4'JR@J;J*31/1Q5U VWQ@XR9(&%I:*[SPI"[OG93@XR9
MFXWFN9(S04L@.DH@.D<"I[?&E!PBLP==QK75ZXTU]-1Q PE+D+#4;(P9T1H9
M,F8.@G4TP]S6?'.'53-KO-?%?D92TU'1*(BTU*RHJ4/'@=99X+N^%^C&"31J
M J6E4%H&I>7#[=N5S(E?RZR2B9=/RT6Y6>R<AV*Y<*I-(YS&3=TU6GKC/*C[
MXETSX) :LK(G:PA)BZ&TY$#K#":,!:'K:K?2*31N!J7E8\ZBJZ/6C66C[=A_
M%]NWCF![OT:2LAGKQQX*=E0O0M<+N7Y/0I3TF- -68HG?<8\S]=[D7!:O5#-
M[*$^?1#,'D^6*"DB(5GDN3VMW[JR["Q;=K@G*%]6\%.;^- 34&,62DN@M!1*
MRZ"T'$7KJJRU9]E9_NRPRJ &+9060VD)E)8RTZ054<"8OIZ!1LU1M*[(6I^6
MV8W:DXDD+N='89'&_P$U8B(Q?4,NI S#R-4G$J)D%.I^&55*NLP+]"DG)0YQ
MYKM,!*YNM1/,OHF$<$%#KF;&DPQDM_5;'Y39C=">2WRX)TQKC0>N;R;X[/$G
M7[U(6@*EI5!:!J7E*%I79:UERNR>Z=DJ@]JG4%H,I2506LI,HU)R86;[H%%S
M%*TKLM9$9787U9[QLU>>+"4D+8;2$F8ZE,P5+!+Z+A1HV Q*RT><1%<FK='*
M[$[KBU-_=OYD)4'-669ZH)QY3+^;@=JN4%H&I>5#[='=B=;ZKMSNNT[+ =IA
M4P4#I<506@*EI5!:!J7EW/1GU?@DW;!/6ZU!R^T&[81DH)TT65BF6<A#=;'H
MUALT:@*EI0=:9X'H"VZLH*%1<Z+EI)2!Z,D)\I,MKW:3]<RL("=L3]],"]J#
M3QY)D+0$2DN)!ID1+9)!H^8H6E<\K4?,[1[QE.2@'35Y)#%=YL"3^B[H&!HT
M@=)2*"V#TO+!YNT*IK5[N=WN?5%JT,Z>K""HYPNE)=QT:6=2^(QIUE<*#9M!
M:?F(D^BJJ/5S^6@_=S!1P,?ZN9SR<\G$(%&22 Q2/#HQ2!QB3V*08/8]K$'M
M:K4E!GGKY_*S_-SAGJ#\7"HQ:(\_^<J$^KE06@JE95!:CJ)U5=;ZN?PL/W=8
M95 _%TJ+H;0$2DLYM?&42 Q"H^8H6E=DK9_+[7YNSP-_M+"(G:#T1&+ZBER-
MO:[DH3Z1F"5]3W]R(J%XONO*0$\TIL0AJHE$FLG&C&#.1.B';B3TB<1D2J;&
M[2CHV9',6YN4VVW2$<]FT3U!.&YJ#HS,B01J?$)I"9260FD9E):/Z*[N<Z.M
M1RKL'NFY K)CI\X14%H,I2506BI,1U)U8V3,$="H^7#4KGQ:&U38;5![-L]>
M>;)(H!M1H;1$F-ZBQ]4RS=57F]"P&926"].6U4^B*Y/6(15VA_3%V3P[?[*2
MH):J,&U+%FH+W@0:,H72,B@M'VB.KH).7G!@MTFGY?+LL,ERP;[^ /O^ ^P+
M$+!O0,"^ L'T4YO1248];HQH'55A=U0GY/+LI,G",NV]R/-\KBV'8FC4!$I+
M#[3NI.$S7^HW-%!CE&@Y)D,6A#U/WHC6&!5V8_3,9)XPS<*P66+J+U*!OH4
M2DN@M)1HD!G1(ADT:HZB=<73^KK"[NM.2>;949.'$L(9#GVN&^4Q-&H"I:50
M6@:EY</MVY5,:](*NTG[HG2>G3U90U"G%DI+A.FMSEC$P\!(!4'C9E!:/N8L
MNCIJ?5@QVH<]-?@]4C9C?5A!^*8>"[AP]2>(B9)^(/0MC12O.7TA KT7*1]6
M,#_DQHW%:!^68$I?<!G(ON5)Z\.*LWS8X9X@C+V0^9[AP]KC3[XVH3XLE)9"
M:1F4EH_HKNXKUEH?5I[EPPX*R(Z=.@- :3&4ED!IJ20<42:$X<-"H^;#4;OR
M:7U8:?=A>Q[/(ZU[2>R^)$=_26PUE:$:_YF>A2-*>JZK9^$H7L@%]_07>:;$
M(<X\*8-0WYV6$<R>T9]@2K5D]'W9LV:4K;TIQSUE;WEPBNX)8@=H$/GF=@Y[
M_,G7)70/*)260FD9E):C:%V5M1:H/.MM L,J@YJA4%H,I2506BI-PU&HL=J<
M(J V)XK6%=G)NU[M7J@]H6>O/%E*T.VC4%HB"8,Q<-6$H2]4H&$S*"T?<1)=
MF;0NJ;2[I"].Z-GYDY4$M56E:5VJ-:^>T8/&3*&T#$K+A]JCJZ'6+)5VLW1:
M2L\.FRP8Z/Y8*"V!TE(H+8/2<FF:JFI\\CGK>6^P;%U5:7=5)Z3T[*3)PC(=
M/LX#H:?#8FC4!$I+#[3. E&X463<^$"]4:+EA!<*OR>]*UMG5)[UWM:AC)XD
MGFV/0B.C9P\^>22!OF, 2DN)!ID1+9)!H^8H6E<\K;$K1[SQ=61&SXZ:/)*8
M7F,D.!?Z0 *U<J&T%$K+H+1\L'F[WV?0&KF>W<A]43[/SIZJ("@MAM(2SW1"
M9[Z,_$BW J%A,R@M'W$2716U?JXWVL\=3 %X8_U<HF!/-H\H263S*!Z=S2-*
M]F3SJ)*TGTN4M&?SO-;/]<[R<X=[@O!SR6R>/?[D*Q/JYT)I*92606GYB.[J
M"JBU:KT7O_B5%A#4JH728B@M@=)2C[!JJ6P>-&H^'/59/I<G7]S8?%6HDL'=
M4BU%5N575=%]&RC"]OG;-Y\_U-7#_KL<OU1U7:WW/]Z7Q:+<-@74W[]65?WS
M0_/UD,?O0+W^$U!+ P04    " !1@*Q: O<I^_D"   !"0  &    'AL+W=O
M<FMS:&5E=',O<VAE970V+GAM;*U676_:,!3]*U8V;47J&D@";1E$*H1I>ZB&
MBKH]3'LPR8583>S4-M#^^UT[(06:LFKK2V([YQS?<_UQ,]@(>:=2 $T>\HRK
MH9-J7?1=5\4IY%2=B0(X?ED(F5.-7;ET52&!)I:49Z[7;O?<G#+NA ,[-I7A
M0*QTQCA,)5&K/*?R<029V R=CK,=N&'+5)L!-QP4= DST+?%5&+/K542E@-7
M3' B83%TKCK]2=?@+> '@XW::1/C9"[$G>E\2X9.VP0$&<3:*%!\K6$,66:$
M,(S[2M.IIS3$W?96_8OUCE[F5,%89#]9HM.A<^&0!!9TE>D;L?D*E1\;8"PR
M99]D4V';#HE72HN\(F,$.>/EFSY4>=@AH$XSP:L(WB$A>('@5P3_M3,$%2%X
M[0S=BF"MNZ5WF[B(:AH.I-@0:="H9AHV^Y:-^6+<[).9EOB5(4^',TTUX+IK
M1<2"C%/*EZ (XV2F17R7BBP!J3Z2R?V*Z4=R<LOI*F$:DA8YF5*)O!0TBVFF
M6N03N9U%Y.1]:^!JC,SHNW$5Q:B,PGLA"I]<"Y129,(32!KXT7'^Y1&^BQFI
MT^)MTS+RC@I>4WE&_,XI\=I>MR&>\>OI09.=_YM]\L^S[R7#K_>(;_7\O^T1
MLT4:]\6OJ[G2$@_][Z:U+]6#9G5S$?9506,8.GC3*9!K<,(/[SJ]]N>FQ+^E
M6/268I,W$MM;HJ!>HN"8>O@=SZ$DL<A1.S6W^!KP$&,?R,D2JT7KE'"PZZ?I
M0],:E?(]*V]JRSKT>_[ 7>^F_CDFZ'K[F*A!YW(?,GD.Z70OGD![_KNU_^Y1
M_Q%;LP1XHDA!64*P J'W'%_*;%=28')4BO=5D_52^7PGGO:9.79[WDO0Y1ZH
M<WZ BIJD#D&3)JE@!U4FP-VYTW.02UM,%=I:<5T>W7JTK->C3G]LZ]K!>(1U
MO&D<Z_N5+6ONDWSY<X#WQY)Q13)8X%3&@4-D67#+CA:%K2ASH;$^V6:*_R@@
M#0"_+X30VXZ9H/[K"?\ 4$L#!!0    ( %& K%HL8ST=NP<  ,0A   8
M>&PO=V]R:W-H965T<R]S:&5E=#<N>&ULK5IM;]LX$OXKA&]Q:(&F%DE1+[G$
M0)IN[PI<=X,->O>9D>A85UGT2K23_/L;2H[>^.)FX7YH)'LX>F:&,\\,Y:LG
M6?]H-D(H]+PMJ^9ZL5%J=[E<-ME&;'GS4>Y$!=^L9;WE"F[KQV6SJP7/VT7;
M<DF"(%IN>5$M5E?M9W?UZDKN55E4XJY&S7Z[Y?7+)U'*I^L%7KQ^\$?QN%'Z
M@^7J:L<?Q;U0WW=W-=PM>RUYL1554\@*U6)]O;C!E[=AH!>T$O\IQ%,SND;:
ME <I?^B;K_GU(M"(1"DRI55P^',0MZ(LM2; \>=1Z:)_IEXXOG[5_J4U'HQY
MX(VXE>5_BUQMKA?) N5BS?>E^D,^_4L<#6):7R;+IOT?/1UE@P7*]HV2V^-B
M0+ MJNXO?SXZ8K0 ]-@7D.,",E\0.A;0XP+:&MHA:\WZS!5?7=7R"=5:&K3I
MB]8W[6JPIJAT&.]5#=\6L$ZM[A57 L*B&B37Z)8W&_0%0MN@=]\KOL\+)?+W
MZ )]O_^,WOWR_FJIX)EZY3([ZO_4Z2<._2GZ)BNU:="O52[RZ?HE8.T!DU?
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
M;MO+C>"YJ+4 ?+^64KW>Z ?T/]Q8_1]02P,$%     @ 48"L6O6/]./)!0
M(PT  !@   !X;"]W;W)K<VAE971S+W-H965T."YX;6R55]MNW#80?==7##9
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
MKBZ)+(I.$;XAFL&"&XY^@0M8*C@B;-EHC(AKW;&>H6?C@DALOI@JN 8NTEI
M4$B,BT=9P&V("H:(W;7<$).*@HUCMV<M0SC1YV)OX$*%XYB,EZ (%?=3\FO%
M>GFH#1#VRV,)ZC4&RBV>M_&UG2HJ&'LD\M,@V&FP 1G40W*]%O"G&+/5(: @
M2>,F \/)0*"OBVK7V'B(9(&?9]D _ 2$? $D\0EUBK+-!M1%:A 8Q('U <\;
M;VLE72.<X2=.[CLV)1>:=()1)0!SB&LK7"4C8)_'Y\_F49B?:J);R(G$M-?,
MU6A)6-/6\AZH]F*"O=(5;TE;4T%^1!BTCX+3US>_7-ME>/K"<^58,[HKD*;A
M!H0Y,?)DS4Z&/=\2Z<FMF5/Y4?UC!+#6)R#DB1-R)+IV9;"1-7S^VI387M3,
MV&2;RGI0 "T*7G-KX[E"P@Z$,(V$)D4E2B8D? 2Y!_V1M9T8=K>OK('.J*[&
M="QE[" N.J0#7R_4:&>OO96\;^S'RB\]6SXHOW<UD%QZ5_NB_H&$?AXD?C+/
M[3J <EG$@?=J'\/2<^/N]?7-$GOF\(CQ(>VW7 C+=4,<'VB&?)'Y>3K'59#Y
M61Q[[X=:0J4'I!_AVY&?I1%Y <L(>@A*_87WX?&L>SCA[$R!C,+D<34\N(W!
M;4)R/\_G3S'&;GLF3Q&R@&3A. LVZT[%!\H]9&1[(#S]$G&(;['P%^ D\I,%
M9#S(O&$D_P_3_,1VF#VC6=7/C7[@0O;R,"'SP _"](E,!UOL*X7*P%66)RA9
M#D)%X;]N3.P_&+YA2J0^I,N/@QC6,:;!GR?)/S@E8@#MRS<Z5KY  D<5EB^8
M9,FWE&\2^EF006CP^I7UF_I)G,-KF@7?<UAD"S\-L083J/@PC;]U6/P'LOU5
M,R.!),:0R_0[SXQL#BV"^4U#&%3!G!RZZ\Q&MU%HNEM[Y\9[0B>,NYCNGNZN
M]1?N-KL_[GX3@$X&G35\W]J :3#-TPE1[I[MWAC9VKOM6AJX*=MEQ2A<*_
M[&\D?,WOWZ"#W8\=J[\ 4$L#!!0    ( %& K%J%5 YHQ0L  -L@   9
M>&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;+U:ZW/;-A+_SK\"H[HWS@PM\Z57
M'IZQT[27FVF:B]-V;F[N T1"$BXDH0*@9=U??[L+D")EV8U[<_T0BP]@W_O;
M73"O=TI_,1LA++NORMJ\&6VLW;Z\O#3Y1E3<C-56U/!FI73%+=SJ]:79:L$+
MVE25ETD432\K+NO1U6MZ]E%?O5:-+64M/FIFFJKB>G\C2K5[,XI'[8-/<KVQ
M^.#RZO66K\6ML#]O/VJXN^RH%+(2M9&J9EJLWHRNXY<W&:ZG!;](L3.]:X::
M+)7Z@C?OBS>C" 42I<@M4N#P<R?>BK)$0B#&;Y[FJ&.)&_O7+?7O27?09<F-
M>*O*7V5A-V]&\Q$KQ(HWI?VD=G\57I\)TLM5:>@OV[FUZ73$\L985?G-($$E
M:_?+[[T=>AOFT2,;$K\A(;D=(Y+R.V[YU6NM=DSC:J"&%Z0J[0;A9(U.N;4:
MWDK89Z]NK<J_L!O0JV!O506^-AS-]?K2 G5<<YE[2C>.4O((I07[4=5V8]B[
MNA#%</\E2-6)EK2BW21/$OR1ZS%+XY E43)Y@E[:J9H2O?29JK)_7B^-U1 ?
M_SJEM2.:G2:*.?/2;'DNWHP@*8S0=V)T]9=OXFGTZ@F1LT[D["GJS_+.DY1.
MR_E!6<&R,7O4,I\W(L 'O-ZSE2HA@PV[OGW+9O&<_>6;>9)$KP;K+SRI_D-:
M%[]BLF;"6+XLI=G(>LW@NBZX+@Q0ULQN!&1HKIK:XDMX%(!+@ 0EK\'=NXW,
M-XP#&5AC]TS<YQM>KP6\M(:)WQI\*&MP90.H81W=M5+  2Y099D+$S)NV Y0
M ']_AT4@Z[S1AI62+V4IK12TJF5\F@&HPBWC6A!:% S,@LJMN-3LCI>-8&I%
M3QP/-$\\>W52 30"$JOXGBT%<+"V!(K+/>V7QC2\SCT]9<0)$N/.71I?ZE8\
MW)\K8^&Q ?PBDVM5,0YV,1L0_H*$#[9\CW2&A@)1M,C5NI;_ 6FDUT_6((SD
M)3K6"J? [UB@QXEY3IW 01<L('-O*WH-ME:"FT83&Z:6_Q8$[BC+,(A.L1@J
MLY-VPT2U+=5>8'2 <\764@">\,A&E&3_=H.CS]2N%AK">LNV)= >L\_*DB4@
M&3SSO)\GXAZO^V8,O!E[Q@,CX28M-E@#23NX%UVZV(T6XJ)"T&5;H27&H4#L
M98"<$,8M=$(\%WB1L1T8[VR1ADF2TL.SV23,DBC$*-@Z$Y;[,%@*8-&QL_Q>
MH$:8H!6:UGE/FJ]1KP1M"F85JU5]\5O#2[F2\(!V,K5U+CCW4/+A[[<_&0\7
M+X+_4<UYF$X3I^4\C&>+H9).'ZC>0FL4D-]#5-=B)6U?:& ?D% 8=:#U4PSY
M=JO5O80^ <BSLSB<3::./5S&\P?L_X0 J:$&/-]PR7P:)JWL230-)Q E?T*$
M.$,_4_;@2/8TG,U];"?3<)9D?]#M[ ^Y/3C+PL4B<_PGX31.3K$'U()FV97
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
MJNAR(V"JT;@ WJ^4LNT-,NC^/\/5?P%02P,$%     @ 48"L6C-'=.H?"0
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
M<-E,*LU&BX6=#B9"XZQAEW,<[J@T"OA]*H3>;HR#=EP<?@=02P,$%     @
M48"L6B(8R=3^ P  /@T  !D   !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL
MY5=+;]M&$+[S5RR8(H@!PGP_I$@"+-M%<T@B1$ES*'I8D4.1,+FK[BZM]-]W
M=DDQ,JPHJ-T<VE[(?<TWWSRYG.VYN),5@")?VH;)N5TIM9NZKLPK:*F\Y#M@
MN%-RT5*%4[%UY4X +8Q0V[B!YR5N2VMF+V9F;246,]ZIIF:P$D1V;4O%GTMH
M^'YN^_9AX4.]K91><!>S'=W"&M2GW4K@S!U1BKH%)FO.B(!R;E_YTV6DSYL#
MO]:PET=CHBW9<'ZG)V^*N>UI0M! KC0"Q=<]7$/3:""D\<> :8\JM>#Q^(#^
ML[$=;=E0"=>\^5P7JIK;F4T**&G7J ]\_PL,]L0:+^>--$^R[\\F$YODG52\
M'82105NS_DV_#'XX$LB\;P@$@T!@>/>*#,L;JNAB)OB>"'T:T?3 F&JDD5S-
M=%#62N!NC7)J\0[C_H;EO 6R D'6%15 7GVDFP;DQ<Q5J$(?=/,!;MG#!=^
MFY"WG*E*DEM60/%0WD5J([_@P&\9G 5\2\4E"7V'!%X0G\$+1WM#@Q?^'7M_
MN]I()3!!?C]E<0\8G0;413.5.YK#W,:JD"#NP5Z\?.$GWNLS=*.1;G0.?;'&
M(BRZ!@@OR0TPCAE %1=2SU4%9$EEG1/*"G)3-YV"@MQ2P6JVE5_-.V736:VG
M;?J(ZDK>8!4C/%$Z0X@$)7%1J,JP$9!SEM=-377%60-'UK4@>M:::''"C,UH
M1C&8 0<S=FB&-%'"H.TZ9:"-4EQ@JF:=IH--2ASM:$Q5"0#2ZG2T<+?FA22@
MLY)@3N45)M74TDFE,RNRWAU(3BV=(G6?(C\1WTF]R(FRU(P]S,1)Z%E'H9A:
M?0QN5^NI=<U;5-CS1>,Z)14:A00=LH%MS9CA6I*>#PF<=)(X:9SID9<X21A:
MGY@V70=R_7YU0'J%/=9)XH!<X# (G#A)R(7UV;0</$KOD?O6>.A(?2UEAYM%
M)TS T"6#VA#51B1UTC1[C'&L=F#R&"'Q2.(?>\%XO8_B@\@]9/3R11;X_NOO
M$4?[)A-G@DH")YJ@Q[W$&M/[_^?F1[*F1O!;1J L\>.F+<7O1'Z'5="7 'HO
M]2.2>8[GQX_"=++$GABH!%4E::1#EF*@ I_\V]H$BC^_2\0.NLL)O1#'H7:#
MDT71/]@E0@0=TC<XE[Y(0K<JG;XHDD3/2=_(=Q(O0=/P^<3\C9TH3/$9)]Z/
M;!;)Q(E]G8,19KP?A\]M%O\!;S^I9T3HQ!!]&?_@GI%D6"+:O[&/C<K+R*F+
MDGMTI\6BVYJ;NT2PCJG^>CNNCC\'5_V=^.OQ_L\"*QGC+$D#)8IZEVEL$]'?
MUON)XCMS0]YPA?=M,ZSP!P>$/H#[)>?J,-$*QE^FQ5]02P,$%     @ 48"L
M6I%#TO/'!   UPL  !D   !X;"]W;W)K<VAE971S+W-H965T,C N>&ULG5;;
M<MLV$'W75^PH3<:982C>*3FV9F3':=.9)!X[31XZ?8!(2$)-$@H 2E&_OKO@
MQ8JBJ$E?2(#8/7MV<1;$Q5:J![WBW,"7LJCTY7!ES/I\--+9BI=,NW+-*UQ9
M2%4R@U.U'.FUXBRW3F4Q"CPO&95,5,/IA?UVJZ87LC:%J/BM EV7)5.[*U[(
M[>70'W8?[L1R9>C#:'JQ9DM^S\T?ZUN%LU&/DHN25UK("A1?7 YG_OE50O;6
MX*/@6[TW!LID+N4#3=[DET./"/&"9X80&+XV_)H7!0$AC<\MYK /28[[XP[]
MM<T=<YDSS:]E\4GD9G4Y' \AYPM6%^9.;G_C;3XQX66RT/8)V\8V3H>0U=K(
MLG5&!J6HFC?[TM9ASV'L?<<A:!T"R[L)9%F^8H9-+Y3<@B)K1*.!3=5Z(SE1
MT:;<&X6K OW,]-[([ &N,*\<KF6)>ZV9+=?9!S8ON'Y^,3(8AHQ'60MYU4 &
MWX&<P%M9F96&FRKG^=?^(Z37<PPZCE?!2<"W3+D0^@X$7A"?P O[G$.+%_YL
MSG_.YMHH%,I?Q[)N0*/CH-0\YWK-,GXYQ.[07&WX</KLB9]X+T]0CGK*T2GT
MZ3TV8UX7'.0"/EFE(??9ABML')AI;*DU9:!I_;T=PFS+5'XLCY.1CN?Q8<7!
MD!Y@3FT,;7=K,+BP[?BPAL^ [?$Q*V:L%16:53NHJ>I&0L:*K"Z8X79UP82"
M#2MJFR%GV0IDDP:C- !/'VM7850H&WEQDA>@.-"X4P>P*J=!Y!XN?#6-X)78
MB!P18"=XD4/HII.G^$S"IQW39T_&@9^^Q#A?UGB$8*B-1+ZB$&8'8>".8W3P
MW<!["G="/[Q8*,Y!5(9CU0PHRBQR0S3")V+?="AH4$+L^K!3&M^A?7\ZJ.%^
M0=8<#]$54[8TLJWK4K&*[/-:B6II:X-V0N;P"X&F^(I<+X03VHM[[<4_K+VF
M=3J%T8F*U3@FLI.0WQ?90A:H+YN1E5OSKQ#_H-2T#=VIH@T]V,O_O[1Q#C?E
MNI [W*:OTK@M6+6W ^_J<HX5/]9H][0+NI_><?KK4?C9<JGXDK;\OI[_C?N,
MV\U5)C3IOK)'2LT*>(-#@?^SC!J@BZY$QN$#B>*CW>XKAGSP$_;-[W6Q@TZQ
M81 X7IS@QOIC-_(A<>,)_-K*()TXGN?A6N"CDF'B!I.>0@YGX\!)</DY.:?N
M) (K[N EX)]MP04A8(.AT(4B\[BSQ1B/MN]KHPWV%R6,Y [Z*_139]+0FY#^
M$G<<$A\G2GTGG?CP$=NBC].V@H0--<L1-"]P4@N :+Z':$EDT<(D=))QT"5G
M1?*MNY\$3MR3&6,KC.W$"7#!2[U3;9'T;9'\<%M<KUBU1&6("M[)ZD6;ZK[*
M]+$F.1G@?S5)]DBD0B*;ALA^Z^B?:IG!85NTVA_06=!T@Y4@X.6##SKQOZ;#
MRZIY\"CT,SK'FO'SP;M'<H<Z]Z/4":V6(]>/!]\HG$ZW05OAL]1SHE:L:)T,
M3NN93L2#T(?"B6,+2+9I<E0FH[W+5LG5TEXIL?*RKDQS[^J_]K?667-9>S1O
MKKP8?(GG 11\@:Z>F^*IJ9IK9#,Q<FVO;G-I\")HARN\>7-%!KB^D-)T$PK0
MW^6G_P)02P,$%     @ 48"L6@@G4KJU @  _ 4  !D   !X;"]W;W)K<VAE
M971S+W-H965T,C$N>&ULG51-;]LP#+WG5Q#>,&Q 6G_FPUEB(.U:;(>B0=-N
MAV$'Q69BH[+D27+=_OM)<NRE:);#+A8I/3X^2B;G#1>/,D=4\%Q2)A=.KE0U
M<UV9YE@2><XK9/IDRT5)E';%SI650)+9H)*Z@>>-W9(4S$GF=F\EDCFO%2T8
MK@3(NBR)>+E RIN%XSO=QEVQRY79<)-Y17:X1O50K83VW)XE*TIDLN ,!&X7
MSM*?740&;P'?"VSD@0VFD@WGC\;YEBT<SPA"BJDR#$0O3WB)E!HB+>/WGM/I
M4YK 0[MCO[:UZUHV1.(EIS^*3.4+9^I AEM24W7'FZ^XKV=D^%).I?U"TV(C
MG3&MI>+E/EC[9<':E3SO[^$@8.K](R#8!P16=YO(JOQ"%$GF@C<@#%JS&<.6
M:J.UN(*91UDKH4\+':>2J[*B_ 41UHJGCW#;,!0R+RI84<+@XSW94)2?YJ[2
MN4R$F^YY+UK>X!^\,=QPIG()5RS#['6\JS7V0H-.Z$5PDO"&B',(_2$$7C Z
MP1?VA8>6+_ROPG\N-U()_<O\.E9ZRQP=9S9M-),527'AZ#Z1*)[023Z\\\?>
MYQ.ZHUYW=(H]6>NVS&J*P+=PM;Y=P3HG.LLQF2>)CLN\S[%EE985B#1Y]-VG
M^:"[?" L,T8$#0HTD"VGNKGE;&"!_2O!*S<:+#4J)0JSCCV<AL.I'T 43(?Q
M)!I<\K(LE :<*7ZVP3.AFU=W7(_WQ\-@%)IE[,>#!_;F/!X-@S""P)\,O6 \
MN.>*T.XP1YK!Y@545^+(H.,8QN/ \EV30L 3H;6]V_H-^WLP>)T[GEH[FL3#
MV)O L4=U#SJR1+&S<T="RFNFVN;L=_O1MFP[^B^\G8OZ$G<%DT!QJT.]\\G(
M ='.FM91O++]O>%*3PMKYGH\HS  ?;[E7'6.2= /_.0/4$L#!!0    ( %&
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
MMH+0#OA\P[G:;W2 =EH'/P%02P,$%     @ 48"L6E-1VJ3=!   =!8  !D
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
M%)KMK[:X0,Y37""@Q050- J*%D&AV:>SVN)"X"XN_'*P+U8O\(X$,3?@6->
MHM&@7T[  9EU@QB4T8KSZ<&AU8S+37E:N-")89^KZ@QC<[<ZD7SK7]R5!W<[
M]ZE_$0W=O_$O;LISN],6OCK^?,_D)M$+\)2OM2GSOOD$R>I$<?5!B5UY9/91
M*"6R\G++V8I+TT!_OQ9"O7XP!IISW=?_!U!+ P04    " !1@*Q:EH8L'4,#
M   K"0  &0   'AL+W=O<FMS:&5E=',O<VAE970R-RYX;6RM5M^/VC@0_E=&
MZ:EJI2L)"0%V"Y& ;=5[J&ZUJ[M]J/K@)0.QUK%3V\#RWW?LA!S+!;2J^D+\
M8[[/WXR9&4]V2C^9 M'"<RFDF0:%M=5U&)IE@24S/56AI)V5TB6S--7KT%0:
M6>Y!I0CC*!J&)>,RR"9^[59G$[6Q@DN\U6 V9<GT?HY"[:9!/S@LW/%U8=U"
MF$TJML9[M/]4MYIF8<N2\Q*EX4J"QM4TF/6O%V-G[PW^Y;@S1V-PGCPJ]>0F
M?^73('*"4.#2.@9&GRTN4 A'1#)^-)Q!>Z0#'H\/[)^][^3+(S.X4.*!Y[:8
M!N, <ERQC;!W:O<%&W]2Q[=4POA?V#6V40#+C;&J;,"DH.2R_K+G)@Y'@#@Y
M X@;0'P*2,\ D@:0>$=K9=ZM&V99-M%J!]I9$YL;^-AX-'G#I;O%>ZMIEQ/.
M9O=6+9]@3H'(8:%*^G,8YN/[ >[I'Y-O!():P8,/!]G,MJCI=F%FZ-XK9VG<
M_M]^"+,=TSF\NT'+N##OB>0/",$43*.9A);TNE/#9:-M7FN+SVB[@J]*VL+
M)YEC_A(?DI^ML_'!V7E\D? KTSU(^G]"',5IAY[%Z^&#"W*2-O:)YTO.Q?Y7
M _QM]FBLI@SXWA74^M!!]Z&N*ER;BBUQ&E#:&]1;#+*W;_K#Z&-71'X3V8OX
M#-KX#"ZQ9S=\RW.4.>PYBKS+U1K?CSR!*UC;+.I%R>AJ$FZ/O3AC-TQ:NQ<"
MTU9@>E&@2Q@F]V_?C./^Z*,!?*ZH.M$E;I6@+!+<[KM4IUUJDGB<GJCNMNO'
MW:*'K>CA1=%WW#Q]6&E$X-(BW9H%S2QV"1UVAFV0G H]9W?5K734*AU=5/KI
M$$Z267;INPQ/88],&^A#Z<H(#"%G^ZXRM'@=3U+S$.&X@^F%A^/6P_%%ZC;K
M69/U*\8U;)G8(%2HZ\KITE\UE6"MF73V^49SN09;>#NNJ.AR"3=*"*>TA;[O
MBEHM:71T66DO&9U<Z?^-!I0P)_<9'O6=$O7:MV,#2[61MJ[*[6K=\>?4\7UG
M/%FGE\#,-\#P/YKZ&4$U=\W)<8$KHHQZ(TH*7;?F>F)5Y;O;H[+4*_VPH-<,
M:F= ^RNE[&'B#FC?1]E/4$L#!!0    ( %& K%HX/ ;L_P0  *L9   9
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
MN:WD)T"'':#C_ZYJ]ZC1*4!N;3NGR%I47-<]3_NT;1DOZT;I,+WN-[%#P+-
MD1PV&.J-8B0FZQ:N'FA1VK9I)30V8?8VP[87I)F [S="Z/N!*= VTLE/4$L#
M!!0    ( %& K%J?SZ(9TP,  $$1   9    >&PO=V]R:W-H965T<R]S:&5E
M=#,P+GAM;+68VV[;.!"&7X50BZ(%TDBBCDYM VV$HEEL%T&SW;TH]H*6QS91
M251)VH[??DE*47Q0B#A0<Q%3$O]_.)_"R=#C+>,_Q0I HONRJ,3$64E97[FN
MR%=0$G'):JC4DP7C)9'JDB]=47,@<R,J"Q=[7NR6A%;.=&SNW?+IF*UE02NX
MY4BLRY+PW2<HV';B^,[#C6]TN9+ZACL=UV0)=R"_U[=<7;F=RYR64 G**L1A
M,7$^^E>9'VB!F?$/A:W8&R.=RHRQG_KB9CYQ/+TB*""7VH*HCPU<0U%H)[6.
M7ZVIT\74POWQ@_MGD[Q*9D8$7+/B7SJ7JXF3.F@."[(NY#>V_0)M0I'VRUDA
MS&^T;>8FD8/RM9"L;,5J!26MFD]RWX+8$_CA$P+<"O!S!4$K")XK"%M!:,@T
MJ1@.&9%D.N9LB[B>K=STP, T:I4^K?1[OY-</:5*)Z?7K"RI5"]2"D2J.;IF
ME:35$JJ<@D!O,Y"$%N(=>H^^WV7H[>MW8U>JL%KLYFV(3TT(_$2(KX1?HL"_
M0-C#48_\VB[/(._D88\\L\O_6%=*[O7)7<6J X8[8-CX!2\"]N-/-1W=2"C%
M?WVD&N^PWUOO\2M1DQPFCMK$ O@&G.F;5W[L?>CC-J19-I#9 =.@8QK8W*<=
M0XD*2F:TH%+#5&5!52HA%6;U%)G!;(<*D!*X>KQ .8<YE8@L.8!Y)7W,F]BQ
MB:W+X&;JC=W-/DCKZLX%:0MW0"?LZ(16.I_73?ZD9.M*]F78Z*.]D$GHZ9^C
M/,.3I05]\S+K>E[XMQ!UV4;6;#-8 %>O%4ERCX@0T)MQ=))QFJ9>@(\2MH8Z
M]\4.9'9 )>ZHQ%8J?S-)"OW_[!ELXA,V(<9I@H_A6".>"V<@LP,X20<GL<*Y
MY:H-XG)W@>J"5/+"U&7XM::UK@F6?9.<D,)1$.%1<D3*&OY<4J=!1W$4C'!_
MD4@[!JF5P<<\UUD*5),=F170EV[:D^YID;#&.3?9GI )CN(G*N*H2W9DWPW
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
M0"!3#O+YFE+Q-%$+M)\DX6]02P,$%     @ 48"L6E"BTQ_1 @  U0<  !D
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
M/P*8WT$480@\C3B".0 /&!)%U7MPYWT4-N^I</V_L]$S4$L#!!0    ( %&
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
M<_!GW?_-V1=02P$"% ,4    " !1@*Q:1L=-2)4   #-    $
M    @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( %& K%J=MWWD
M\0   "L"   1              "  <,   !D;V-0<F]P<R]C;W)E+GAM;%!+
M 0(4 Q0    ( %& K%J97)PC$ 8  )PG   3              "  >,!  !X
M;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ 48"L6A4[ OQ&!@  Z"(
M !@              ("!) @  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+
M 0(4 Q0    ( %& K%H$*)*4K <  *8>   8              " @: .  !X
M;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " !1@*Q:7_BPFA@#
M   W"0  &               @(&"%@  >&PO=V]R:W-H965T<R]S:&5E=#,N
M>&UL4$L! A0#%     @ 48"L6@#MX_V5!@  UQX  !@              ("!
MT!D  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( %& K%HD
ML74PWPL   ]U   8              " @9L@  !X;"]W;W)K<VAE971S+W-H
M965T-2YX;6Q02P$"% ,4    " !1@*Q: O<I^_D"   !"0  &
M    @(&P+   >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @
M48"L6BQC/1V[!P  Q"$  !@              ("!WR\  'AL+W=O<FMS:&5E
M=',O<VAE970W+GAM;%!+ 0(4 Q0    ( %& K%KUC_3CR04  ",-   8
M          " @= W  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4
M    " !1@*Q:7!1:L<L&  !<$   &               @('//0  >&PO=V]R
M:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ 48"L6FX/E2%C!0  ^!
M !D              ("!T$0  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q0
M2P$"% ,4    " !1@*Q:A50.:,4+  #;(   &0              @(%J2@
M>&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( %& K%HS1W3J
M'PD  '07   9              " @696  !X;"]W;W)K<VAE971S+W-H965T
M,3(N>&UL4$L! A0#%     @ 48"L6CJ6ZZ)9!P  ?A$  !D
M ("!O%\  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    " !1
M@*Q:KJ_-%G4&   +$0  &0              @(%,9P  >&PO=V]R:W-H965T
M<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( %& K%I6*AMSJP4  )4-   9
M          " @?AM  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#
M%     @ 48"L6AY9TQR" @  N <  !D              ("!VG,  'AL+W=O
M<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " !1@*Q:$ZV'ZT0"  "*
M!@  &0              @(&3=@  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM
M;%!+ 0(4 Q0    ( %& K%HU7MRL!@0  #H*   9              " @0YY
M  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ 48"L6B(8
MR=3^ P  /@T  !D              ("!2WT  'AL+W=O<FMS:&5E=',O<VAE
M970Q.2YX;6Q02P$"% ,4    " !1@*Q:D4/2\\<$  #7"P  &0
M    @(& @0  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    (
M %& K%H()U*ZM0(  /P%   9              " @7Z&  !X;"]W;W)K<VAE
M971S+W-H965T,C$N>&UL4$L! A0#%     @ 48"L6I;?&8QD!   QQ<  !D
M             ("!:HD  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"
M% ,4    " !1@*Q:TO$6'9\"  #4!@  &0              @($%C@  >&PO
M=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( %& K%K>%8*]>@(
M +D'   9              " @=N0  !X;"]W;W)K<VAE971S+W-H965T,C0N
M>&UL4$L! A0#%     @ 48"L6E-1VJ3=!   =!8  !D              ("!
MC),  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " !1@*Q:
M;" ]/;\'  #C/0  &0              @(&@F   >&PO=V]R:W-H965T<R]S
M:&5E=#(V+GAM;%!+ 0(4 Q0    ( %& K%J6ABP=0P,  "L)   9
M      " @9:@  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%
M  @ 48"L6C@\!NS_!   JQD  !D              ("!$*0  'AL+W=O<FMS
M:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " !1@*Q:!.-;5TL#  !4"P
M&0              @(%&J0  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+
M 0(4 Q0    ( %& K%J?SZ(9TP,  $$1   9              " @<BL  !X
M;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ 48"L6NLR6E-V
M!0  HR<  !D              ("!TK   'AL+W=O<FMS:&5E=',O<VAE970S
M,2YX;6Q02P$"% ,4    " !1@*Q:;3]/*%4#  ">#   &0
M@(%_M@  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( %&
MK%I0HM,?T0(  -4'   9              " @0NZ  !X;"]W;W)K<VAE971S
M+W-H965T,S,N>&UL4$L! A0#%     @ 48"L6@-A])TQ P  2!,   T
M         ( !$[T  'AL+W-T>6QE<RYX;6Q02P$"% ,4    " !1@*Q:EXJ[
M',     3 @  "P              @ %OP   7W)E;',O+G)E;'-02P$"% ,4
M    " !1@*Q:341H!%T#  "(%@  #P              @ %8P0  >&PO=V]R
M:V)O;VLN>&UL4$L! A0#%     @ 48"L6N ]"5=H 0  2A0  !H
M     ( !XL0  'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%
M  @ 48"L6AR:"5V, 0  YQ0  !,              ( !@L8  %M#;VYT96YT
A7U1Y<&5S72YX;6Q02P4&     "D *0 6"P  /\@

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>109</ContextCount>
  <ElementCount>222</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>25</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>995100 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/dei/role/document/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>995301 - Statement - Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConsolidatedBalanceSheet</Role>
      <ShortName>Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>995302 - Statement - Balance Sheets (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals</Role>
      <ShortName>Balance Sheets (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>995303 - Statement - Statements of Comprehensive Income (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConsolidatedIncomeStatement</Role>
      <ShortName>Statements of Comprehensive Income (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>995304 - Statement - Statements of Changes in Stockholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable</Role>
      <ShortName>Statements of Changes in Stockholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>995305 - Statement - Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals</Role>
      <ShortName>Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>995306 - Statement - Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConsolidatedCashFlow</Role>
      <ShortName>Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>995307 - Disclosure - Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/BasisofPresentation</Role>
      <ShortName>Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>995308 - Disclosure - Investment Securities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/InvestmentSecurities</Role>
      <ShortName>Investment Securities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>995309 - Disclosure - Net Income Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/NetIncomePerShare</Role>
      <ShortName>Net Income Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>995310 - Disclosure - Stock Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockBasedCompensation</Role>
      <ShortName>Stock Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>995311 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>995312 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>995313 - Disclosure - Recently Issued Accounting Standards</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/RecentlyIssuedAccountingStandards</Role>
      <ShortName>Recently Issued Accounting Standards</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>995314 - Disclosure - Employee Stock Ownership Plan</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/EmployeeStockOwnershipPlan</Role>
      <ShortName>Employee Stock Ownership Plan</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>995410 - Disclosure - Pay vs Performance Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/PvpDisclosure</Role>
      <ShortName>Pay vs Performance Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>995445 - Disclosure - Insider Trading Arrangements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements</Role>
      <ShortName>Insider Trading Arrangements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>996000 - Disclosure - Investment Securities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/InvestmentSecuritiesTables</Role>
      <ShortName>Investment Securities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/InvestmentSecurities</ParentRole>
      <Position>18</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>996001 - Disclosure - Net Income Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/NetIncomePerShareTables</Role>
      <ShortName>Net Income Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/NetIncomePerShare</ParentRole>
      <Position>19</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>996002 - Disclosure - Stock Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockBasedCompensationTables</Role>
      <ShortName>Stock Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/StockBasedCompensation</ParentRole>
      <Position>20</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>996003 - Disclosure - Employee Stock Ownership Plan (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/EmployeeStockOwnershipPlanTables</Role>
      <ShortName>Employee Stock Ownership Plan (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/EmployeeStockOwnershipPlan</ParentRole>
      <Position>21</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>996004 - Disclosure - Investment Securities - Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable</Role>
      <ShortName>Investment Securities - Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>996005 - Disclosure - Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable</Role>
      <ShortName>Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>996006 - Disclosure - Net Income Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/NetIncomePerShareDetails</Role>
      <ShortName>Net Income Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/NetIncomePerShareTables</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>996007 - Disclosure - Net Income Per Share - Schedule of Denominators of the Basic and Diluted Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable</Role>
      <ShortName>Net Income Per Share - Schedule of Denominators of the Basic and Diluted Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>996008 - Disclosure - Stock Based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockBasedCompensationDetails</Role>
      <ShortName>Stock Based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockBasedCompensationTables</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>996009 - Disclosure - Stock Based Compensation - Schedule of Weighted Average Assumptions of Option Award (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable</Role>
      <ShortName>Stock Based Compensation - Schedule of Weighted Average Assumptions of Option Award (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>996010 - Disclosure - Stock Based Compensation - Schedule of Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofStockOptionActivityTable</Role>
      <ShortName>Stock Based Compensation - Schedule of Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>996011 - Disclosure - Stock Based Compensation - Schedule of Changes in Non-Vested Stock Options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable</Role>
      <ShortName>Stock Based Compensation - Schedule of Changes in Non-Vested Stock Options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>996012 - Disclosure - Commitments and Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/CommitmentsandContingenciesDetails</Role>
      <ShortName>Commitments and Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/CommitmentsandContingencies</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>996013 - Disclosure - Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/RevenueDetails</Role>
      <ShortName>Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/Revenue</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>996014 - Disclosure - Employee Stock Ownership Plan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/EmployeeStockOwnershipPlanDetails</Role>
      <ShortName>Employee Stock Ownership Plan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/EmployeeStockOwnershipPlanTables</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="esp-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>996015 - Disclosure - Employee Stock Ownership Plan - Schedule of ESOP Shares (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofESOPSharesTable</Role>
      <ShortName>Employee Stock Ownership Plan - Schedule of ESOP Shares (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="esp-20250331.htm">esp-20250331.htm</File>
    <File>esp-20250331.xsd</File>
    <File>esp-20250331_cal.xml</File>
    <File>esp-20250331_def.xml</File>
    <File>esp-20250331_lab.xml</File>
    <File>esp-20250331_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>image_001.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="543">http://fasb.org/us-gaap/2025</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>53
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "esp-20250331.htm": {
   "nsprefix": "esp",
   "nsuri": "http://espey.com/20250331",
   "dts": {
    "inline": {
     "local": [
      "esp-20250331.htm"
     ]
    },
    "schema": {
     "local": [
      "esp-20250331.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-roles-2025.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-types-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-roles-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-types-2025.xsd",
      "https://xbrl.sec.gov/country/2025/country-2025.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025_def.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025_lab.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025_pre.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-sub-2025.xsd",
      "https://xbrl.sec.gov/ecd/2025/ecd-2025.xsd",
      "https://xbrl.sec.gov/ecd/2025/ecd-sub-2025.xsd",
      "https://xbrl.sec.gov/sic/2025/sic-2025.xsd",
      "https://xbrl.sec.gov/stpr/2025/stpr-2025.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "esp-20250331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "esp-20250331_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "esp-20250331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "esp-20250331_pre.xml"
     ]
    }
   },
   "keyStandard": 199,
   "keyCustom": 23,
   "axisStandard": 11,
   "axisCustom": 0,
   "memberStandard": 12,
   "memberCustom": 13,
   "hidden": {
    "total": 25,
    "http://espey.com/20250331": 3,
    "http://xbrl.sec.gov/dei/2025": 4,
    "http://fasb.org/us-gaap/2025": 18
   },
   "contextCount": 109,
   "entityCount": 1,
   "segmentCount": 25,
   "elementCount": 547,
   "unitCount": 4,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2025": 543,
    "http://xbrl.sec.gov/dei/2025": 29,
    "http://xbrl.sec.gov/ecd/2025": 4
   },
   "report": {
    "R1": {
     "role": "http://xbrl.sec.gov/dei/role/document/Cover",
     "longName": "995100 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://espey.com/role/ConsolidatedBalanceSheet",
     "longName": "995301 - Statement - Balance Sheets",
     "shortName": "Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals",
     "longName": "995302 - Statement - Balance Sheets (Parentheticals)",
     "shortName": "Balance Sheets (Parentheticals)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://espey.com/role/ConsolidatedIncomeStatement",
     "longName": "995303 - Statement - Statements of Comprehensive Income (Unaudited)",
     "shortName": "Statements of Comprehensive Income (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:Revenues",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:CostOfRevenue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable",
     "longName": "995304 - Statement - Statements of Changes in Stockholders' Equity (Unaudited)",
     "shortName": "Statements of Changes in Stockholders' Equity (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c55",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c55",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals",
     "longName": "995305 - Statement - Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals)",
     "shortName": "Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://espey.com/role/ConsolidatedCashFlow",
     "longName": "995306 - Statement - Statements of Cash Flows (Unaudited)",
     "shortName": "Statements of Cash Flows (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ShareBasedCompensation",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "unique": true
     }
    },
    "R8": {
     "role": "http://espey.com/role/BasisofPresentation",
     "longName": "995307 - Disclosure - Basis of Presentation",
     "shortName": "Basis of Presentation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://espey.com/role/InvestmentSecurities",
     "longName": "995308 - Disclosure - Investment Securities",
     "shortName": "Investment Securities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:InvestmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:InvestmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://espey.com/role/NetIncomePerShare",
     "longName": "995309 - Disclosure - Net Income Per Share",
     "shortName": "Net Income Per Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://espey.com/role/StockBasedCompensation",
     "longName": "995310 - Disclosure - Stock Based Compensation",
     "shortName": "Stock Based Compensation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://espey.com/role/CommitmentsandContingencies",
     "longName": "995311 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://espey.com/role/Revenue",
     "longName": "995312 - Disclosure - Revenue",
     "shortName": "Revenue",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://espey.com/role/RecentlyIssuedAccountingStandards",
     "longName": "995313 - Disclosure - Recently Issued Accounting Standards",
     "shortName": "Recently Issued Accounting Standards",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://espey.com/role/EmployeeStockOwnershipPlan",
     "longName": "995314 - Disclosure - Employee Stock Ownership Plan",
     "shortName": "Employee Stock Ownership Plan",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:EmployeeStockOwnershipPlanTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:EmployeeStockOwnershipPlanTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure",
     "longName": "995410 - Disclosure - Pay vs Performance Disclosure",
     "shortName": "Pay vs Performance Disclosure",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R17": {
     "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
     "longName": "995445 - Disclosure - Insider Trading Arrangements",
     "shortName": "Insider Trading Arrangements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ecd:Rule10b51ArrTrmntdFlag",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ecd:Rule10b51ArrTrmntdFlag",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://espey.com/role/InvestmentSecuritiesTables",
     "longName": "996000 - Disclosure - Investment Securities (Tables)",
     "shortName": "Investment Securities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:InvestmentTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:InvestmentTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://espey.com/role/NetIncomePerShareTables",
     "longName": "996001 - Disclosure - Net Income Per Share (Tables)",
     "shortName": "Net Income Per Share (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "19",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://espey.com/role/StockBasedCompensationTables",
     "longName": "996002 - Disclosure - Stock Based Compensation (Tables)",
     "shortName": "Stock Based Compensation (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "20",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://espey.com/role/EmployeeStockOwnershipPlanTables",
     "longName": "996003 - Disclosure - Employee Stock Ownership Plan (Tables)",
     "shortName": "Employee Stock Ownership Plan (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "21",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable",
     "longName": "996004 - Disclosure - Investment Securities - Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities (Details)",
     "shortName": "Investment Securities - Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "22",
     "firstAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:TradingSecuritiesDebtAmortizedCost",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:InvestmentTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:TradingSecuritiesDebtAmortizedCost",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:InvestmentTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable",
     "longName": "996005 - Disclosure - Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details)",
     "shortName": "Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "23",
     "firstAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://espey.com/role/NetIncomePerShareDetails",
     "longName": "996006 - Disclosure - Net Income Per Share (Details)",
     "shortName": "Net Income Per Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "24",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable",
     "longName": "996007 - Disclosure - Net Income Per Share - Schedule of Denominators of the Basic and Diluted Earnings Per Share (Details)",
     "shortName": "Net Income Per Share - Schedule of Denominators of the Basic and Diluted Earnings Per Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "25",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "esp:CommonSharesOutstandingBasic",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "unique": true
     }
    },
    "R26": {
     "role": "http://espey.com/role/StockBasedCompensationDetails",
     "longName": "996008 - Disclosure - Stock Based Compensation (Details)",
     "shortName": "Stock Based Compensation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable",
     "longName": "996009 - Disclosure - Stock Based Compensation - Schedule of Weighted Average Assumptions of Option Award (Details)",
     "shortName": "Stock Based Compensation - Schedule of Weighted Average Assumptions of Option Award (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "27",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "4",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "4",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://espey.com/role/ScheduleofStockOptionActivityTable",
     "longName": "996010 - Disclosure - Stock Based Compensation - Schedule of Stock Option Activity (Details)",
     "shortName": "Stock Based Compensation - Schedule of Stock Option Activity (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "28",
     "firstAnchor": {
      "contextRef": "c89",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c89",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable",
     "longName": "996011 - Disclosure - Stock Based Compensation - Schedule of Changes in Non-Vested Stock Options (Details)",
     "shortName": "Stock Based Compensation - Schedule of Changes in Non-Vested Stock Options (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "29",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://espey.com/role/CommitmentsandContingenciesDetails",
     "longName": "996012 - Disclosure - Commitments and Contingencies (Details)",
     "shortName": "Commitments and Contingencies (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "30",
     "firstAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://espey.com/role/RevenueDetails",
     "longName": "996013 - Disclosure - Revenue (Details)",
     "shortName": "Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "31",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:Revenues",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "unique": true
     }
    },
    "R32": {
     "role": "http://espey.com/role/EmployeeStockOwnershipPlanDetails",
     "longName": "996014 - Disclosure - Employee Stock Ownership Plan (Details)",
     "shortName": "Employee Stock Ownership Plan (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "32",
     "firstAnchor": {
      "contextRef": "c104",
      "name": "esp:EmployeeStockOwnershipPlanHoursWorked",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c104",
      "name": "esp:EmployeeStockOwnershipPlanHoursWorked",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://espey.com/role/ScheduleofESOPSharesTable",
     "longName": "996015 - Disclosure - Employee Stock Ownership Plan - Schedule of ESOP Shares (Details)",
     "shortName": "Employee Stock Ownership Plan - Schedule of ESOP Shares (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c2",
      "name": "us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20250331.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "esp_ASC606Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ASC606Member",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASC 606 [Member]",
        "documentation": "ASC 606 [Member]",
        "label": "ASC606 Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable",
        "label": "Accounts Payable, Current",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r721"
     ]
    },
    "us-gaap_AccountsPayableCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableCurrentAndNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable",
        "label": "Accounts Payable",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r988"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts receivable, less allowance for credit losses of $3,000",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current."
       }
      }
     },
     "auth_ref": [
      "r898"
     ]
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccruedEmployeeBenefitsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ESOP payable",
        "label": "Accrued Employee Benefits, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r28"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued expenses:",
        "label": "Accrued Liabilities, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedPayrollTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccruedPayrollTaxesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Payroll and other taxes withheld",
        "label": "Accrued Payroll Taxes, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory payroll taxes incurred through that date and withheld from employees pertaining to services received from them, including entity's matching share of the employees FICA taxes and contributions to the state and federal unemployment insurance programs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r28"
     ]
    },
    "us-gaap_AccruedSalariesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccruedSalariesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Salaries and wages",
        "label": "Accrued Salaries, Current",
        "documentation": "Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r651"
     ]
    },
    "us-gaap_AccruedVacationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccruedVacationCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vacation",
        "label": "Accrued Vacation, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for unused vacation time owed to employees based on the entity's vacation benefit given to its employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r28"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated other comprehensive gain",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r14",
      "r42",
      "r98",
      "r481",
      "r502",
      "r506",
      "r967"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated Other Comprehensive Gain",
        "label": "AOCI Attributable to Parent [Member]",
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r8",
      "r14",
      "r382",
      "r385",
      "r429",
      "r497",
      "r498",
      "r876",
      "r877",
      "r878",
      "r887",
      "r888",
      "r889",
      "r890"
     ]
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "Additional402vDisclosureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional 402(v) Disclosure [Text Block]",
        "terseLabel": "Additional 402(v) Disclosure"
       }
      }
     },
     "auth_ref": [
      "r795"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdditionalPaidInCapitalCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capital in excess of par value",
        "label": "Additional Paid in Capital, Common Stock",
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital."
       }
      }
     },
     "auth_ref": [
      "r36"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capital in Excess of Par Value",
        "label": "Additional Paid-in Capital [Member]",
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders."
       }
      }
     },
     "auth_ref": [
      "r511",
      "r887",
      "r888",
      "r889",
      "r890",
      "r968",
      "r991"
     ]
    },
    "dei_AdditionalSecurities462b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AdditionalSecurities462b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Securities. 462(b)"
       }
      }
     },
     "auth_ref": [
      "r851"
     ]
    },
    "dei_AdditionalSecurities462bFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AdditionalSecurities462bFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Securities, 462(b), File Number"
       }
      }
     },
     "auth_ref": [
      "r851"
     ]
    },
    "dei_AdditionalSecuritiesEffective413b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AdditionalSecuritiesEffective413b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Securities Effective, 413(b)"
       }
      }
     },
     "auth_ref": [
      "r849"
     ]
    },
    "dei_AddressTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AddressTypeDomain",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Address Type [Domain]",
        "documentation": "An entity may have several addresses for different purposes and this domain represents all such types."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AdjToCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation Amount",
        "terseLabel": "Adjustment to Compensation, Amount"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AdjToCompAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation [Axis]",
        "terseLabel": "Adjustment to Compensation:"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AdjToNonPeoNeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]",
        "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AdjToPeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment To PEO Compensation, Footnote [Text Block]",
        "terseLabel": "Adjustment To PEO Compensation, Footnote"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Axis]",
        "documentation": "Information by amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r79",
      "r80",
      "r81",
      "r82",
      "r83",
      "r84",
      "r85",
      "r86",
      "r87",
      "r88",
      "r89",
      "r117",
      "r118",
      "r119",
      "r134",
      "r135",
      "r136",
      "r137",
      "r138",
      "r148",
      "r179",
      "r180",
      "r216",
      "r219",
      "r220",
      "r221",
      "r240",
      "r241",
      "r242",
      "r259",
      "r260",
      "r263",
      "r264",
      "r333",
      "r334",
      "r335",
      "r336",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r387",
      "r388",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r402",
      "r403",
      "r404",
      "r405",
      "r408",
      "r409",
      "r419",
      "r420",
      "r423",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "APIC, Share-Based Payment Arrangement, Option, Increase for Cost Recognition",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r933"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:",
        "label": "Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r842"
     ]
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Amount",
        "terseLabel": "Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r758",
      "r769",
      "r785",
      "r820"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AggtErrCompNotYetDeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]",
        "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined"
       }
      }
     },
     "auth_ref": [
      "r761",
      "r772",
      "r788",
      "r823"
     ]
    },
    "ecd_AggtPnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AggtPnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Pension Adjustments Service Cost [Member]",
        "terseLabel": "Aggregate Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r843"
     ]
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AllAdjToCompMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Adjustments to Compensation [Member]",
        "terseLabel": "All Adjustments to Compensation"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AllExecutiveCategoriesMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Executive Categories [Member]",
        "terseLabel": "All Executive Categories"
       }
      }
     },
     "auth_ref": [
      "r815"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AllIndividualsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Individuals [Member]",
        "terseLabel": "All Individuals"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r815",
      "r824",
      "r828",
      "r836"
     ]
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AllTradingArrangementsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Trading Arrangements [Member]",
        "terseLabel": "All Trading Arrangements"
       }
      }
     },
     "auth_ref": [
      "r834"
     ]
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation expense",
        "label": "Share-Based Payment Arrangement, Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r328",
      "r337",
      "r338"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts receivable, allowance (in Dollars)",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r182",
      "r222"
     ]
    },
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentDescription",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Description",
        "documentation": "Description of changes contained within amended document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AnnualInformationForm": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AnnualInformationForm",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Annual Information Form",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form."
       }
      }
     },
     "auth_ref": [
      "r765"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://espey.com/role/NetIncomePerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Options to purchase shares",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented."
       }
      }
     },
     "auth_ref": [
      "r161"
     ]
    },
    "dei_ApproximateDateOfCommencementOfProposedSaleToThePublic": {
     "xbrltype": "dateOrAsapItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ApproximateDateOfCommencementOfProposedSaleToThePublic",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Approximate Date of Commencement of Proposed Sale to Public",
        "documentation": "The approximate date of a commencement of a proposed sale of securities to the public. This element is disclosed in S-1, S-3, S-4, S-11, F-1, F-3 and F-10 filings."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "label": "Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r73",
      "r97",
      "r125",
      "r126",
      "r127",
      "r165",
      "r168",
      "r174",
      "r175",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r373",
      "r375",
      "r411",
      "r470",
      "r471",
      "r478",
      "r541",
      "r662",
      "r663",
      "r666",
      "r721",
      "r724",
      "r726",
      "r737",
      "r928",
      "r929",
      "r979"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r93",
      "r101",
      "r125",
      "r126",
      "r127",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r373",
      "r375",
      "r411",
      "r721",
      "r928",
      "r929",
      "r979"
     ]
    },
    "dei_AuditedAnnualFinancialStatements": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditedAnnualFinancialStatements",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Audited Annual Financial Statements",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements."
       }
      }
     },
     "auth_ref": [
      "r765"
     ]
    },
    "dei_AuditorFirmId": {
     "xbrltype": "nonemptySequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditorFirmId",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Firm ID",
        "documentation": "PCAOB issued Audit Firm Identifier"
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765"
     ]
    },
    "dei_AuditorLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditorLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AuditorLocation": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditorLocation",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765"
     ]
    },
    "dei_AuditorName": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditorName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765"
     ]
    },
    "dei_AuditorOpinionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditorOpinionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Opinion [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r847"
     ]
    },
    "dei_AuditorTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditorTable",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gross Unrealized Gains",
        "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax",
        "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r188"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Gross Unrealized Losses",
        "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax",
        "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r189"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "One to Five Years",
        "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, after Year One Through Five",
        "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r193",
      "r474"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Less than One Year",
        "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One",
        "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r192",
      "r473"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AvailableForSaleSecuritiesDebtSecuritiesCurrent",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet",
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable",
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment securities",
        "verboseLabel": "Fair Value",
        "netLabel": "Available-for-sale debt securities",
        "label": "Debt Securities, Available-for-Sale, Current",
        "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current."
       }
      }
     },
     "auth_ref": [
      "r183",
      "r228"
     ]
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Exercise Price",
        "terseLabel": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r831"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardGrantDateFairValue",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Grant Date Fair Value",
        "terseLabel": "Fair Value as of Grant Date"
       }
      }
     },
     "auth_ref": [
      "r832"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]",
        "terseLabel": "Award Timing Disclosures"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardTmgHowMnpiCnsdrdTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing, How MNPI Considered [Text Block]",
        "terseLabel": "Award Timing, How MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardTmgMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Method [Text Block]",
        "terseLabel": "Award Timing Method"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardTmgMnpiCnsdrdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Considered [Flag]",
        "terseLabel": "Award Timing MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardTmgMnpiDiscTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Disclosure [Text Block]",
        "terseLabel": "Award Timing MNPI Disclosure"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardTmgPredtrmndFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Predetermined [Flag]",
        "terseLabel": "Award Timing Predetermined"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/StockBasedCompensationDetails",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Underlying Securities Amount",
        "terseLabel": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardsCloseToMnpiDiscIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r829"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardsCloseToMnpiDiscTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures"
       }
      }
     },
     "auth_ref": [
      "r828"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "AwardsCloseToMnpiDiscTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures, Table"
       }
      }
     },
     "auth_ref": [
      "r828"
     ]
    },
    "esp_BacklogPercentageOfRecognitions": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "BacklogPercentageOfRecognitions",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Backlog amount to be recognized",
        "documentation": "The percentage of backlog that will be recognized within three years of the operating cycle.",
        "label": "Backlog Percentage Of Recognitions"
       }
      }
     },
     "auth_ref": []
    },
    "esp_BacklogPercentageOfRecognitionsYearOne": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "BacklogPercentageOfRecognitionsYearOne",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Backlog amount to be recognized, 2025",
        "documentation": "The percentage of backlog that will be recognized within one year of the operating cycle.",
        "label": "Backlog Percentage Of Recognitions Year One"
       }
      }
     },
     "auth_ref": []
    },
    "esp_BacklogPercentageOfRecognitionsYearThree": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "BacklogPercentageOfRecognitionsYearThree",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Backlog amount to be recognized, 2027",
        "documentation": "The percentage of backlog that will be recognized within two years of the operating cycle.",
        "label": "Backlog Percentage Of Recognitions Year Three"
       }
      }
     },
     "auth_ref": []
    },
    "esp_BacklogPercentageOfRecognitionsYearTwo": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "BacklogPercentageOfRecognitionsYearTwo",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Backlog amount to be recognized, 2026",
        "documentation": "The percentage of backlog that will be recognized within two years of the operating cycle.",
        "label": "Backlog Percentage Of Recognitions Year Two"
       }
      }
     },
     "auth_ref": []
    },
    "dei_BusinessContactMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "BusinessContactMember",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Contact [Member]",
        "documentation": "Business contact for the entity"
       }
      }
     },
     "auth_ref": [
      "r753",
      "r765"
     ]
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock",
     "presentation": [
      "http://espey.com/role/BasisofPresentation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis of Presentation",
        "label": "Business Description and Basis of Presentation [Text Block]",
        "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)."
       }
      }
     },
     "auth_ref": [
      "r870",
      "r882"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents",
        "label": "Cash and Cash Equivalent",
        "documentation": "Amount of cash and cash equivalent. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r95",
      "r649"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Cash and cash equivalents, beginning of period",
        "periodEndLabel": "Cash and cash equivalents, end of period",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Continuing Operation",
        "documentation": "Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r53",
      "r124"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Increase in cash and cash equivalents",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Period Increase (Decrease), Excluding Exchange Rate Effect, Including Discontinued Operation",
        "documentation": "Amount, excluding effect from change in exchange rate, of increase (decrease) in cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r53"
     ]
    },
    "us-gaap_CertificatesOfDepositMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CertificatesOfDepositMember",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Certificates of deposit [Member]",
        "label": "Certificates of Deposit [Member]",
        "documentation": "Short to medium-term investment available at banks and savings and loan institutions where a customer agrees to lend money to the institution for a certain amount of time and is paid a predetermined rate of interest. Certificates of deposit (CD) are typically Federal Deposit Insurance Corporation (FDIC) insured."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r732",
      "r733",
      "r734",
      "r735"
     ]
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ChangedPeerGroupFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changed Peer Group, Footnote [Text Block]",
        "terseLabel": "Changed Peer Group, Footnote"
       }
      }
     },
     "auth_ref": [
      "r806"
     ]
    },
    "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]",
        "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r803"
     ]
    },
    "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]",
        "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r801"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CityAreaCode",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "CoSelectedMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Amount",
        "terseLabel": "Company Selected Measure Amount"
       }
      }
     },
     "auth_ref": [
      "r807"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "CoSelectedMeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Name",
        "terseLabel": "Company Selected Measure Name"
       }
      }
     },
     "auth_ref": [
      "r807"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and contingencies (See Note 5)",
        "label": "Commitments and Contingencies",
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r66",
      "r479",
      "r528"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and Contingencies",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r58",
      "r243",
      "r244",
      "r644",
      "r925",
      "r927"
     ]
    },
    "esp_CommitmentsandContingenciesDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "CommitmentsandContingenciesDetailsTable",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_CommonSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "CommonSharesOutstandingBasic",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common shares outstanding, beginning of period",
        "documentation": "Common shares outstanding, beginning of period.",
        "label": "Common Shares Outstanding Basic"
       }
      }
     },
     "auth_ref": []
    },
    "esp_CommonSharesOutstandingDiluted": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "CommonSharesOutstandingDiluted",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common shares outstanding, beginning of period",
        "documentation": "Common shares outstanding, beginning of period.",
        "label": "Common Shares Outstanding Diluted"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockDividendsPerShareCashPaid": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockDividendsPerShareCashPaid",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividends paid on common stock per share",
        "label": "Common Stock, Dividends, Per Share, Cash Paid",
        "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding."
       }
      }
     },
     "auth_ref": [
      "r59"
     ]
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockDividendsPerShareDeclared",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividends per share: (in Dollars per share)",
        "label": "Common Stock, Dividends, Per Share, Declared",
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding."
       }
      }
     },
     "auth_ref": [
      "r59"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockMember",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common Stock",
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r728",
      "r729",
      "r730",
      "r732",
      "r733",
      "r734",
      "r735",
      "r887",
      "r888",
      "r890",
      "r968",
      "r989",
      "r991"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, par value (in Dollars per share)",
        "label": "Common Stock, Par or Stated Value Per Share",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r35"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares authorized",
        "label": "Common Stock, Shares Authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r529"
     ]
    },
    "us-gaap_CommonStockSharesHeldInEmployeeTrustShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockSharesHeldInEmployeeTrustShares",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unearned ESOP shares",
        "label": "Common Stock, Shares Held in Employee Trust, Shares",
        "documentation": "Number of common stock held in a trust that has been set up specifically to accumulate stock for the sole purpose of distribution to participating employees but not yet earned."
       }
      }
     },
     "auth_ref": [
      "r932"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares issued",
        "label": "Common Stock, Shares, Issued",
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r35"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance (in Shares)",
        "periodEndLabel": "Balance (in Shares)",
        "terseLabel": "Common stock, shares outstanding",
        "label": "Common Stock, Shares, Outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r35",
      "r529",
      "r547",
      "r991",
      "r992"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Authorized 10,000,000 shares; Issued 3,129,874 shares as of March 31, 2025 and June 30, 2024. Outstanding 2,816,558 and 2,733,958 shares as of March 31, 2025 and June 30, 2024, respectively (includes 195,234 and 211,487 Unearned ESOP shares, respectively)",
        "label": "Common Stock, Value, Issued",
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r266",
      "r271",
      "r480",
      "r721"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Company Selected Measure"
       }
      }
     },
     "auth_ref": [
      "r812"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "CompActuallyPaidVsNetIncomeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Net Income [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Net Income"
       }
      }
     },
     "auth_ref": [
      "r811"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "CompActuallyPaidVsOtherMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Other Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Other Measure"
       }
      }
     },
     "auth_ref": [
      "r813"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return"
       }
      }
     },
     "auth_ref": [
      "r810"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total comprehensive income",
        "terseLabel": "Total comprehensive income",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r106",
      "r108",
      "r113",
      "r468",
      "r489",
      "r490"
     ]
    },
    "dei_ContactPersonnelEmailAddress": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContactPersonnelEmailAddress",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contact Personnel Email Address",
        "documentation": "Email address of contact personnel."
       }
      }
     },
     "auth_ref": []
    },
    "dei_ContactPersonnelFaxNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContactPersonnelFaxNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contact Personnel Fax Number",
        "documentation": "Fax Number of contact personnel."
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "dei_ContactPersonnelName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContactPersonnelName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contact Personnel Name",
        "documentation": "Name of contact personnel"
       }
      }
     },
     "auth_ref": []
    },
    "dei_ContainedFileInformationFileDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContainedFileInformationFileDescription",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contained File Information, File Description",
        "documentation": "The description of the contained file."
       }
      }
     },
     "auth_ref": []
    },
    "dei_ContainedFileInformationFileName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContainedFileInformationFileName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contained File Information, File Name",
        "documentation": "The name of the contained file."
       }
      }
     },
     "auth_ref": []
    },
    "dei_ContainedFileInformationFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContainedFileInformationFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contained File Information, File Number",
        "documentation": "The SEC Document Number of the contained file."
       }
      }
     },
     "auth_ref": []
    },
    "dei_ContainedFileInformationFileType": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ContainedFileInformationFileType",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contained File Information, File Type",
        "documentation": "The type or format of the contained file (usually XBRL but may be used for other types such as HTML, Word, PDF, GIF/JPG, etc.)."
       }
      }
     },
     "auth_ref": []
    },
    "esp_ContractTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ContractTerm",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract term",
        "documentation": "Contract term.",
        "label": "Contract Term"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractWithCustomerLiability",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract liabilities",
        "label": "Contract with Customer, Liability",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r275",
      "r276",
      "r278",
      "r289"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract liabilities",
        "label": "Contract with Customer, Liability, Current",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r275",
      "r276",
      "r278",
      "r289"
     ]
    },
    "us-gaap_CostOfRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CostOfRevenue",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of sales",
        "label": "Cost of Revenue",
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r125",
      "r126",
      "r127",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r411",
      "r662",
      "r928"
     ]
    },
    "dei_CountryRegion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CountryRegion",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Country Region",
        "documentation": "Region code of country"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerFunds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CustomerFunds",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Funding amount",
        "label": "Customer Funds",
        "documentation": "Carrying amount as of the balance sheet date of amounts received from and refundable to customers unless used by them to obtain goods and services from the entity."
       }
      }
     },
     "auth_ref": [
      "r25"
     ]
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtSecuritiesAvailableForSaleTable",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Securities, Available-for-Sale [Table]",
        "documentation": "Disclosure of information about investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195"
     ]
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtSecuritiesAvailableForSaleTableTextBlock",
     "presentation": [
      "http://espey.com/role/InvestmentSecuritiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities",
        "label": "Debt Securities, Available-for-Sale [Table Text Block]",
        "documentation": "Tabular disclosure of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income tax benefit",
        "label": "Deferred Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r75",
      "r883",
      "r886"
     ]
    },
    "us-gaap_DeferredOtherTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredOtherTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax benefit",
        "label": "Deferred Other Tax Expense (Benefit)",
        "documentation": "Amount of other deferred income tax expense (benefit) pertaining to income (loss) from continuing operations. For example, but not limited to, acquisition-date income tax benefits or expenses recognized from changes in the acquirer's valuation allowance for its previously existing deferred tax assets resulting from a business combination and adjustments to beginning-of-year balance of a valuation allowance because of a change in circumstance causing a change in judgment about the realizability of the related deferred tax asset in future periods."
       }
      }
     },
     "auth_ref": [
      "r883",
      "r886",
      "r965"
     ]
    },
    "esp_DeferredTaxAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "DeferredTaxAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net deferred tax assets",
        "documentation": "Deferred tax assets as of the balance sheet date.",
        "label": "Deferred Tax Assets Current"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredTaxAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total deferred tax asset",
        "label": "Deferred Tax Assets, Gross",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards."
       }
      }
     },
     "auth_ref": [
      "r346"
     ]
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax asset",
        "label": "Deferred Tax Assets, Net",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r964"
     ]
    },
    "dei_DelayedOrContinuousOffering": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DelayedOrContinuousOffering",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Delayed or Continuous Offering"
       }
      }
     },
     "auth_ref": [
      "r777",
      "r778",
      "r792"
     ]
    },
    "us-gaap_Depreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Depreciation",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation",
        "label": "Depreciation",
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r20",
      "r116",
      "r652",
      "r653",
      "r655",
      "r657"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r287",
      "r288",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://espey.com/role/StockBasedCompensation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock Based Compensation",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r296",
      "r300",
      "r329",
      "r330",
      "r332",
      "r676"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Based Compensation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DividendOrInterestReinvestmentPlanOnly": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DividendOrInterestReinvestmentPlanOnly",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividend or Interest Reinvestment Plan Only"
       }
      }
     },
     "auth_ref": [
      "r777",
      "r778",
      "r792"
     ]
    },
    "esp_DividendPayableAmountPerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "DividendPayableAmountPerShare",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividends per share (in Dollars per share)",
        "documentation": "The per share amount of a dividend declared, and paid.",
        "label": "Dividend Payable Amount Per Share"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DividendsCommonStock",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividends paid on common stock, per share",
        "label": "Dividends, Common Stock",
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK)."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r59"
     ]
    },
    "dei_DocumentAccountingStandard": {
     "xbrltype": "accountingStandardItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentAccountingStandard",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Accounting Standard",
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'."
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765"
     ]
    },
    "dei_DocumentCopyrightInformation": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentCopyrightInformation",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Copyright Information",
        "documentation": "The copyright information for the document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentCreationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentCreationDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Creation Date",
        "documentation": "The date the document was made available and submitted, in YYYY-MM-DD format. The date of submission, date of acceptance by the recipient, and the document effective date are all potentially different."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentDescription",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Description",
        "documentation": "The description of the document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentDomain",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document [Domain]",
        "documentation": "Type of the document as assigned by the filer, corresponding to SEC document naming convention standards."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentEffectiveDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentEffectiveDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Effective Date",
        "documentation": "The date when a document, upon receipt and acceptance, becomes officially effective, in YYYY-MM-DD format. Usually it is a system-assigned date time value, but it may be declared by the submitter in some cases."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFinStmtErrorCorrectionFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFinStmtErrorCorrectionFlag",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Financial Statement Error Correction [Flag]",
        "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction."
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765",
      "r816"
     ]
    },
    "dei_DocumentFinStmtRestatementRecoveryAnalysisFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFinStmtRestatementRecoveryAnalysisFlag",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Financial Statement Restatement Recovery Analysis [Flag]",
        "documentation": "Indicates whether any of the financial statement periods include restatements that required a recovery analysis of incentive-based compensation received by any of the registrant's executive officers during the relevant recovery period pursuant to \u00a7240.10D-1(b)."
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765",
      "r816"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationDocumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentInformationDocumentAxis",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information, Document [Axis]",
        "documentation": "The axis of a table defines the relationship between the domain members or categories in the table and the line items or concepts that complete the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentInformationLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentInformationTable",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Table]",
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentInformationTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Text Block]",
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Name",
        "documentation": "Name of the document as assigned by the filer, corresponding to SEC document naming convention standards. Examples appear in the &lt;FILENAME> field of EDGAR filings, such as 'htm_25911.htm', 'exhibit1.htm', 'v105727_8k.txt'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodStartDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentPeriodStartDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period Start Date",
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "dei_DocumentRegistrationStatement": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentRegistrationStatement",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Registration Statement",
        "documentation": "Boolean flag that is true only for a form used as a registration statement."
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "dei_DocumentShellCompanyEventDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentShellCompanyEventDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Event Date",
        "documentation": "Date of event requiring a shell company report."
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "dei_DocumentShellCompanyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentShellCompanyReport",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Report",
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "dei_DocumentSubtitle": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentSubtitle",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Subtitle",
        "documentation": "The subtitle given to the document resource by the creator or publisher. An example is 'A New Period of Growth'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentSynopsis": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentSynopsis",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Synopsis",
        "documentation": "A synopsis or description of the document provided by the creator or publisher. Examples are 'This is the 2006 annual report for Company. During this period we saw revenue grow by 10% and earnings per share grow by 15% over the prior period'"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentTitle": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentTitle",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Title",
        "documentation": "The name or title given to the document resource by the creator or publisher. An example is '2002 Annual Report'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r793"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentType",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentVersion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentVersion",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Version",
        "documentation": "The version identifier of the document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Documents Incorporated by Reference [Text Block]",
        "documentation": "Documents incorporated by reference."
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]",
        "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year"
       }
      }
     },
     "auth_ref": [
      "r805"
     ]
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income Per Share [Abstract]",
        "terseLabel": "Net income per share:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic (in Dollars per share)",
        "label": "Earnings Per Share, Basic",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r89",
      "r114",
      "r137",
      "r138",
      "r139",
      "r140",
      "r141",
      "r142",
      "r143",
      "r144",
      "r151",
      "r153",
      "r158",
      "r159",
      "r160",
      "r164",
      "r264",
      "r335",
      "r363",
      "r372",
      "r404",
      "r405",
      "r469",
      "r491",
      "r659"
     ]
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareBasicAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic EPS:",
        "label": "Earnings Per Share, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted (in Dollars per share)",
        "label": "Earnings Per Share, Diluted",
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r89",
      "r114",
      "r137",
      "r138",
      "r139",
      "r140",
      "r141",
      "r142",
      "r143",
      "r144",
      "r153",
      "r158",
      "r159",
      "r160",
      "r164",
      "r264",
      "r335",
      "r363",
      "r372",
      "r404",
      "r405",
      "r469",
      "r491",
      "r659"
     ]
    },
    "us-gaap_EarningsPerShareDilutedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareDilutedAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted EPS:",
        "label": "Earnings Per Share, Diluted [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://espey.com/role/NetIncomePerShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net Income per Share",
        "label": "Earnings Per Share [Text Block]",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r150",
      "r161",
      "r162",
      "r163"
     ]
    },
    "dei_EffectiveAfter60Days486a": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveAfter60Days486a",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective after 60 Days, 486(a)"
       }
      }
     },
     "auth_ref": [
      "r855"
     ]
    },
    "dei_EffectiveOnDate486a": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveOnDate486a",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Date, 486(a)"
       }
      }
     },
     "auth_ref": [
      "r855"
     ]
    },
    "dei_EffectiveOnDate486b": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveOnDate486b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Date, 486(b)"
       }
      }
     },
     "auth_ref": [
      "r856"
     ]
    },
    "dei_EffectiveOnSetDate486a": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveOnSetDate486a",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Set Date, 486(a)"
       }
      }
     },
     "auth_ref": [
      "r855"
     ]
    },
    "dei_EffectiveOnSetDate486b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveOnSetDate486b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Set Date, 486(b)"
       }
      }
     },
     "auth_ref": [
      "r856"
     ]
    },
    "dei_EffectiveUponFiling462e": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveUponFiling462e",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Upon Filing, 462(e)"
       }
      }
     },
     "auth_ref": [
      "r854"
     ]
    },
    "dei_EffectiveUponFiling486b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveUponFiling486b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective upon Filing, 486(b)"
       }
      }
     },
     "auth_ref": [
      "r856"
     ]
    },
    "dei_EffectiveWhenDeclaredSection8c": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EffectiveWhenDeclaredSection8c",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective when Declared, Section 8(c)"
       }
      }
     },
     "auth_ref": [
      "r858"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Period in which compensation cost will be recognized",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r331"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized compensation cost",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount",
        "documentation": "Amount of cost to be recognized for option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r960"
     ]
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Stock Options [Member]",
        "label": "Employee Stock Option [Member]",
        "terseLabel": "Employee Stock Option",
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time."
       }
      }
     },
     "auth_ref": [
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r959"
     ]
    },
    "esp_EmployeeStockOwnershipPlanDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "EmployeeStockOwnershipPlanDetailsTable",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPCompensationExpense",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow",
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ESOP compensation expense",
        "label": "Employee Stock Ownership Plan (ESOP), Compensation Expense",
        "documentation": "The amount of plan compensation cost recognized during the period."
       }
      }
     },
     "auth_ref": [
      "r340",
      "r678",
      "r679"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPDeferredSharesFairValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair value of unreleased shares (in Dollars)",
        "label": "Employee Stock Ownership Plan (ESOP), Deferred Shares, Fair Value",
        "documentation": "Fair value of unearned shares held by the employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r342",
      "r678",
      "r679"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan (ESOP) Name [Axis]",
        "documentation": "Information by name of employee stock ownership plan."
       }
      }
     },
     "auth_ref": [
      "r963"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPDisclosuresLineItems",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r963"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares",
     "calculation": {
      "http://espey.com/role/ScheduleofESOPSharesTable": {
       "parentTag": "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Allocated shares",
        "label": "Employee Stock Ownership Plan (ESOP), Number of Allocated Shares",
        "documentation": "The shares or units in an ESOP trust that have been assigned to individual participant accounts based on a known formula. IRS rules require allocations to be nondiscriminatory generally based on compensation, length of service, or a combination of both. For any particular participant such shares or units may be vested, unvested, or partially vested."
       }
      }
     },
     "auth_ref": [
      "r341",
      "r678",
      "r679"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares",
     "calculation": {
      "http://espey.com/role/ScheduleofESOPSharesTable": {
       "parentTag": "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Committed-to-be-released shares",
        "label": "Employee Stock Ownership Plan (ESOP), Number of Committed-to-be-Released Shares",
        "documentation": "The shares that, although not legally released, will be released by a future scheduled and committed debt service payment and will be allocated to employees for service rendered in the current accounting period. The ESOP documents typically define the period of service to which the shares relate. ESOP shares are released to compensate employees directly, to settle employer liabilities for other employee benefits, and to replace dividends on allocated shares that are used for debt service."
       }
      }
     },
     "auth_ref": [
      "r341",
      "r678",
      "r679"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares",
     "calculation": {
      "http://espey.com/role/ScheduleofESOPSharesTable": {
       "parentTag": "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unreleased shares",
        "label": "Employee Stock Ownership Plan (ESOP), Number of Suspense Shares",
        "documentation": "Shares contributed to the ESOP that have not yet been released, committed to be released, or allocated to participant accounts. Suspense shares generally collateralize ESOP debt."
       }
      }
     },
     "auth_ref": [
      "r341",
      "r678",
      "r679"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPSharesInESOP",
     "calculation": {
      "http://espey.com/role/ScheduleofESOPSharesTable": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total shares held by the ESOP",
        "label": "Employee Stock Ownership Plan (ESOP), Shares in ESOP",
        "documentation": "Sum of the allocated, committed-to-be-released and suspense shares of the entity held by the plan."
       }
      }
     },
     "auth_ref": [
      "r678",
      "r679",
      "r963"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeStockOwnershipPlanESOPSharesInESOPAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of ESOP Shares [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_EmployeeStockOwnershipPlanHoursWorked": {
     "xbrltype": "integerItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "EmployeeStockOwnershipPlanHoursWorked",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of hours worked per year to qualify for the plan",
        "documentation": "Minimum number of hours worked per year for nonunion employees to participate in ESOP.",
        "label": "Employee Stock Ownership Plan Hours Worked"
       }
      }
     },
     "auth_ref": []
    },
    "esp_EmployeeStockOwnershipPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "EmployeeStockOwnershipPlanMember",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee Stock Ownership Plan [Member]",
        "documentation": "Information by name of employee stock ownership plan.",
        "label": "Employee Stock Ownership Plan Member"
       }
      }
     },
     "auth_ref": []
    },
    "esp_EmployeeStockOwnershipPlanTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "EmployeeStockOwnershipPlanTextBlock",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlan"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee Stock Ownership Plan",
        "documentation": "The entire disclosure for employee stock ownership plan.",
        "label": "Employee Stock Ownership Plan Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntitiesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntitiesTable",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entities [Table]",
        "documentation": "Container to assemble all relevant information about each entity associated with the document instance"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAccountingStandard": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAccountingStandard",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Accounting Standard",
        "documentation": "The standardized abbreviation of the accounting standard used by the entity. This can either be US GAAP as promulgated by the FASB or IFRS as promulgated by the IASB. Example: 'US GAAP', 'IFRS'. This is distinct from the Document Accounting Standard element."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressDescription",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Description",
        "documentation": "Description of the kind of address for the entity, if needed to distinguish more finely among mailing, principal, legal, accounting, contact or other addresses."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine2": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Two",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine3": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine3",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Three",
        "documentation": "Address Line 3 such as an Office Park"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCountry": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressCountry",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Country",
        "documentation": "ISO 3166-1 alpha-2 country code."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressesAddressTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressesAddressTypeAxis",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Addresses, Address Type [Axis]",
        "documentation": "The axis of a table defines the relationship between the domain members or categories in the table and the line items or concepts that complete the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressesLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Addresses [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressesTable",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Addresses [Table]",
        "documentation": "Container of address information for the entity"
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Bankruptcy Proceedings, Reporting Current",
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not. Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element."
       }
      }
     },
     "auth_ref": [
      "r745"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityContactPersonnelLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityContactPersonnelLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Contact Personnel [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityDomain",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation",
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity [Domain]",
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityExTransitionPeriod": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityExTransitionPeriod",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Ex Transition Period",
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards."
       }
      }
     },
     "auth_ref": [
      "r857"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityHomeCountryISOCode": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityHomeCountryISOCode",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Home Country ISO Code",
        "documentation": "ISO 3166-1 alpha-2 country code for the Entity's home country. If home country is different from country of legal incorporation, then also provide country of legal incorporation in the 'Entity Incorporation, State Country Code' element."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityIncorporationDateOfIncorporation": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityIncorporationDateOfIncorporation",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, Date of Incorporation",
        "documentation": "Date when an entity was incorporated"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInformationFormerLegalOrRegisteredName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityInformationFormerLegalOrRegisteredName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Information, Former Legal or Registered Name",
        "documentation": "Former Legal or Registered Name of an entity"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityInformationLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r846"
     ]
    },
    "dei_EntityInvCompanyType": {
     "xbrltype": "invCompanyType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityInvCompanyType",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Inv Company Type",
        "documentation": "One of: N-1A (Mutual Fund), N-1 (Open-End Separate Account with No Variable Annuities), N-2 (Closed-End Investment Company), N-3 (Separate Account Registered as Open-End Management Investment Company), N-4 (Variable Annuity UIT Separate Account), N-5 (Small Business Investment Company), N-6 (Variable Life UIT Separate Account), S-1 or S-3 (Face Amount Certificate Company), S-6 (UIT, Non-Insurance Product)."
       }
      }
     },
     "auth_ref": [
      "r845"
     ]
    },
    "dei_EntityLegalForm": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityLegalForm",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Legal Form",
        "documentation": "The details of the entity's legal form. Examples are partnership, limited liability company, trust, etc."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingDepositoryReceiptRatio": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingDepositoryReceiptRatio",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Depository Receipt Ratio",
        "documentation": "The number of underlying shares represented by one American Depository Receipt (ADR) or Global Depository Receipt (GDR). A value of '3' means that one ADR represents 3 underlying shares. If one underlying share represents 2 ADR's then the value would be represented as '0.5'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingDescription",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Description",
        "documentation": "Description of the kind of listing the entity has on the exchange, if necessary to further describe different instruments that are already distinguished by Entity, Exchange and Security."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingForeign": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingForeign",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Foreign",
        "documentation": "Yes or No value indicating whether this is a listing that is a foreign listing or depository receipt."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingParValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingParValuePerShare",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Par Value Per Share",
        "documentation": "The par value per share of security quoted in same currency as Trading currency. Example: '0.01'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingPrimary": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingPrimary",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Primary",
        "documentation": "Yes or No value indicating whether a listing of an instrument on an exchange is primary for the entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingSecurityTradingCurrency": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingSecurityTradingCurrency",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Security Trading Currency",
        "documentation": "The three character ISO 4217 code for the currency in which the security is quoted. Example: 'USD'"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingsExchangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingsExchangeAxis",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listings, Exchange [Axis]",
        "documentation": "The axis of a table defines the relationship between the domain members or categories in the table and the line items or concepts that complete the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingsLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listings [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityListingsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityListingsTable",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listings [Table]",
        "documentation": "Container for exchange listing information for an entity"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityNumberOfEmployees": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityNumberOfEmployees",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Number of Employees",
        "documentation": "Number of persons employed by the Entity"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityPhoneFaxNumbersLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityPhoneFaxNumbersLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Phone Fax Numbers [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityPrimarySicNumber": {
     "xbrltype": "sicNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityPrimarySicNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Primary SIC Number",
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity."
       }
      }
     },
     "auth_ref": [
      "r765"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Public Float",
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityReportingCurrencyISOCode": {
     "xbrltype": "currencyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityReportingCurrencyISOCode",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Reporting Currency ISO Code",
        "documentation": "The three character ISO 4217 code for the currency used for reporting purposes. Example: 'USD'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "dei_EntityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity [Text Block]",
        "documentation": "Container to serve as parent of six Entity related Table concepts."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Voluntary Filers",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Well-known Seasoned Issuer",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A."
       }
      }
     },
     "auth_ref": [
      "r848"
     ]
    },
    "ecd_EqtyAwrdsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "EqtyAwrdsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Footnote [Text Block]",
        "terseLabel": "Equity Awards Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r799"
     ]
    },
    "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]",
        "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r841"
     ]
    },
    "ecd_EqtyAwrdsAdjsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "EqtyAwrdsAdjsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments [Member]",
        "terseLabel": "Equity Awards Adjustments"
       }
      }
     },
     "auth_ref": [
      "r841"
     ]
    },
    "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r841"
     ]
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component [Domain]",
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r81",
      "r88",
      "r89",
      "r109",
      "r110",
      "r111",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r145",
      "r147",
      "r166",
      "r216",
      "r221",
      "r241",
      "r263",
      "r274",
      "r335",
      "r349",
      "r350",
      "r358",
      "r359",
      "r360",
      "r364",
      "r371",
      "r372",
      "r380",
      "r382",
      "r383",
      "r384",
      "r385",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r403",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r421",
      "r429",
      "r487",
      "r497",
      "r498",
      "r499",
      "r511",
      "r565"
     ]
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "EquityValuationAssumptionDifferenceFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Valuation Assumption Difference, Footnote [Text Block]",
        "terseLabel": "Equity Valuation Assumption Difference, Footnote"
       }
      }
     },
     "auth_ref": [
      "r809"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ErrCompAnalysisTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneous Compensation Analysis [Text Block]",
        "terseLabel": "Erroneous Compensation Analysis"
       }
      }
     },
     "auth_ref": [
      "r758",
      "r769",
      "r785",
      "r820"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ErrCompRecoveryTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneously Awarded Compensation Recovery [Table]",
        "terseLabel": "Erroneously Awarded Compensation Recovery"
       }
      }
     },
     "auth_ref": [
      "r755",
      "r766",
      "r782",
      "r817"
     ]
    },
    "dei_ExchangeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ExchangeDomain",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exchange [Domain]",
        "documentation": "The set of all exchanges. MIC exchange codes are drawn from ISO 10383."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]",
        "terseLabel": "Executive Category:"
       }
      }
     },
     "auth_ref": [
      "r815"
     ]
    },
    "dei_ExhibitsOnly462d": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ExhibitsOnly462d",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exhibits Only, 462(d)"
       }
      }
     },
     "auth_ref": [
      "r853"
     ]
    },
    "dei_ExhibitsOnly462dFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ExhibitsOnly462dFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exhibits Only, 462(d), File Number"
       }
      }
     },
     "auth_ref": [
      "r853"
     ]
    },
    "dei_Extension": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Extension",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Extension",
        "documentation": "Extension number for local phone number."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FinancialInstrumentAxis",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instrument [Axis]",
        "documentation": "Information by type of financial instrument."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r229",
      "r230",
      "r231",
      "r258",
      "r273",
      "r377",
      "r393",
      "r407",
      "r410",
      "r412",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r476",
      "r488",
      "r665",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r722",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r912",
      "r913",
      "r914",
      "r915",
      "r969",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r466",
      "r467",
      "r508",
      "r647",
      "r648",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695",
      "r696",
      "r697",
      "r698",
      "r699",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company."
       }
      }
     },
     "auth_ref": [
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r508",
      "r647",
      "r648",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695",
      "r696",
      "r697",
      "r698",
      "r699",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets",
        "label": "Finite-Lived Intangible Assets, Net",
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r466",
      "r922"
     ]
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount",
        "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r824"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Expense of Enforcement, Amount",
        "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r824"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Violation of Home Country Law, Amount",
        "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r824"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Explanation of Impracticability [Text Block]",
        "terseLabel": "Forgone Recovery, Explanation of Impracticability"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r824"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r824"
     ]
    },
    "dei_FormerAddressMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "FormerAddressMember",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Former Address [Member]",
        "documentation": "Former address for entity"
       }
      }
     },
     "auth_ref": [
      "r752",
      "r776"
     ]
    },
    "dei_FormerFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "FormerFiscalYearEndDate",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Former Fiscal Year End Date",
        "documentation": "Former end date of previous fiscal years"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]",
        "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year"
       }
      }
     },
     "auth_ref": [
      "r804"
     ]
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "(Gain) Loss on disposal of property, plant and equipment",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "label": "Gross Profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r45",
      "r72",
      "r125",
      "r126",
      "r127",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r411",
      "r661",
      "r662",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r928"
     ]
    },
    "dei_IcfrAuditorAttestationFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "IcfrAuditorAttestationFlag",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "auth_ref": [
      "r750",
      "r753",
      "r765"
     ]
    },
    "esp_IncentiveStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "IncentiveStockOptionMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Incentive Stock Options [Member]",
        "documentation": "Incentive Stock Options [Member]",
        "label": "Incentive Stock Option Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income before provision for income taxes",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r68",
      "r72",
      "r470",
      "r472",
      "r485",
      "r654",
      "r656",
      "r658",
      "r661",
      "r662",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Provision for income taxes",
        "label": "Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r76",
      "r125",
      "r146",
      "r147",
      "r165",
      "r172",
      "r175",
      "r344",
      "r345",
      "r354",
      "r492",
      "r654",
      "r656",
      "r658",
      "r680"
     ]
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeTaxesPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income taxes paid",
        "label": "Income Taxes Paid, Net",
        "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r123",
      "r347",
      "r348"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Decrease in accounts payable",
        "label": "Increase (Decrease) in Accounts Payable",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Decrease in trade accounts receivable",
        "label": "Increase (Decrease) in Accounts Receivable",
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in income taxes payable",
        "label": "Increase (Decrease) in Income Taxes Payable",
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedSalaries": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInAccruedSalaries",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Decrease in accrued salaries and wages",
        "label": "Increase (Decrease) in Accrued Salaries",
        "documentation": "The increase (decrease) during the period in accrued salaries."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in contract liabilities",
        "label": "Increase (Decrease) in Contract with Customer, Liability",
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r464",
      "r881"
     ]
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInIncomeTaxesReceivable",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Decrease in income taxes receivable",
        "label": "Increase (Decrease) in Income Taxes Receivable",
        "documentation": "The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Decrease in inventories",
        "label": "Increase (Decrease) in Inventories",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in assets and liabilities:",
        "label": "Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Increase (Decrease) in Operating Capital [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in other accrued expenses",
        "label": "Increase (Decrease) in Other Accrued Liabilities",
        "documentation": "The increase (decrease) during the reporting period in other expenses incurred but not yet paid."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Increase in prepaid expenses and other current assets",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "esp_IncreaseDecreaseInVacationAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "IncreaseDecreaseInVacationAccrual",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in vacation accrual",
        "documentation": "The increase (decrease) in vacation accrual for the period.",
        "label": "Increase Decrease In Vacation Accrual"
       }
      }
     },
     "auth_ref": []
    },
    "esp_IncreaseDecreaseinESOPPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "IncreaseDecreaseinESOPPayable",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in ESOP payable",
        "documentation": "Increase (Decrease) in employee stock ownership plan payable amount.",
        "label": "Increase Decreasein ESOPPayable"
       }
      }
     },
     "auth_ref": []
    },
    "esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "IncreasedecreaseInPayrollAndOtherTaxesWithheld",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in payroll and other taxes withheld",
        "documentation": "Increase (decrease) in payroll and other taxes withheld.",
        "label": "Increasedecrease In Payroll And Other Taxes Withheld"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average dilutive effect of stock options",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method."
       }
      }
     },
     "auth_ref": [
      "r154",
      "r155",
      "r156",
      "r160",
      "r299"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "IndividualAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Individual [Axis]",
        "terseLabel": "Individual:"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r815",
      "r824",
      "r828",
      "r836"
     ]
    },
    "esp_IndividualEmployeeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "IndividualEmployeeMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Individual Employee [Member]",
        "documentation": "Individual Employee [Member]",
        "label": "Individual Employee Member"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]",
        "terseLabel": "Insider Trading Arrangements:"
       }
      }
     },
     "auth_ref": [
      "r834"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]",
        "terseLabel": "Insider Trading Policies and Procedures:"
       }
      }
     },
     "auth_ref": [
      "r754",
      "r840"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "InsiderTrdPoliciesProcAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Adopted [Flag]",
        "terseLabel": "Insider Trading Policies and Procedures Adopted"
       }
      }
     },
     "auth_ref": [
      "r754",
      "r840"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]",
        "terseLabel": "Insider Trading Policies and Procedures Not Adopted"
       }
      }
     },
     "auth_ref": [
      "r754",
      "r840"
     ]
    },
    "us-gaap_InventoryForLongTermContractsOrPrograms": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryForLongTermContractsOrPrograms",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Costs related to contracts in process",
        "label": "Inventory for Long-Term Contracts or Programs, Gross",
        "documentation": "Amount before valuation and LIFO reserves, and progress payments, of inventory associated with long-term contracts, expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r872"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total inventories",
        "label": "Inventory, Net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r650",
      "r721"
     ]
    },
    "us-gaap_InventoryNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryNetAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories:",
        "label": "Inventory, Net [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryRawMaterials",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Raw materials",
        "label": "Inventory, Raw Materials, Gross",
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r874"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryWorkInProcess",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Work-in-process",
        "label": "Inventory, Work in Process, Gross",
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r873"
     ]
    },
    "dei_InvestmentCompanyActFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "InvestmentCompanyActFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Act File Number"
       }
      }
     },
     "auth_ref": [
      "r778",
      "r779",
      "r780",
      "r781"
     ]
    },
    "dei_InvestmentCompanyActRegistration": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "InvestmentCompanyActRegistration",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Act Registration"
       }
      }
     },
     "auth_ref": [
      "r794"
     ]
    },
    "dei_InvestmentCompanyRegistrationAmendment": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "InvestmentCompanyRegistrationAmendment",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Registration Amendment"
       }
      }
     },
     "auth_ref": [
      "r794"
     ]
    },
    "dei_InvestmentCompanyRegistrationAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "InvestmentCompanyRegistrationAmendmentNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Registration Amendment Number"
       }
      }
     },
     "auth_ref": [
      "r794"
     ]
    },
    "us-gaap_InvestmentIncomeInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentIncomeInterest",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest income",
        "label": "Investment Income, Interest",
        "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities."
       }
      }
     },
     "auth_ref": [
      "r165",
      "r171",
      "r175",
      "r662",
      "r879"
     ]
    },
    "esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Securities - Schedule of Contractual Maturities of Available-for-Sale Debt Securities (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentTextBlock",
     "presentation": [
      "http://espey.com/role/InvestmentSecurities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment Securities",
        "label": "Investment [Text Block]",
        "documentation": "The entire disclosure for investment."
       }
      }
     },
     "auth_ref": [
      "r861",
      "r862",
      "r899"
     ]
    },
    "us-gaap_InvestmentTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentTypeAxis",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Type [Axis]",
        "documentation": "Information by type of investments."
       }
      }
     },
     "auth_ref": [
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r568",
      "r577",
      "r591",
      "r599",
      "r612",
      "r616",
      "r632",
      "r636",
      "r637",
      "r638",
      "r639",
      "r730"
     ]
    },
    "us-gaap_InvestmentTypeCategorizationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentTypeCategorizationMember",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments [Domain]",
        "documentation": "Asset obtained to generate income or appreciate in value."
       }
      }
     },
     "auth_ref": [
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r568",
      "r577",
      "r591",
      "r599",
      "r612",
      "r616",
      "r632",
      "r636",
      "r637",
      "r638",
      "r639",
      "r730"
     ]
    },
    "us-gaap_InvestmentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Securities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentsClassifiedByContractualMaturityDateTableTextBlock",
     "presentation": [
      "http://espey.com/role/InvestmentSecuritiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Contractual Maturities of Available-for-Sale Debt Securities",
        "label": "Investments Classified by Contractual Maturity Date [Table Text Block]",
        "documentation": "Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LegalEntityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "LegalEntityAxis",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation",
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity [Axis]",
        "documentation": "The set of legal entities associated with a report."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LegalEntityIdentifier": {
     "xbrltype": "legalEntityIdentifierItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "LegalEntityIdentifier",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity Identifier",
        "documentation": "A globally unique ISO 17442 value to identify entities, commonly abbreviated as LEI."
       }
      }
     },
     "auth_ref": [
      "r738"
     ]
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LettersOfCreditOutstandingAmount",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contingent liabilities on outstanding standby letters of credit agreements",
        "label": "Letters of Credit Outstanding, Amount",
        "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date."
       }
      }
     },
     "auth_ref": [
      "r725",
      "r727"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "label": "Liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r27",
      "r28",
      "r29",
      "r30",
      "r31",
      "r32",
      "r33",
      "r125",
      "r126",
      "r127",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r374",
      "r375",
      "r376",
      "r411",
      "r527",
      "r660",
      "r666",
      "r737",
      "r928",
      "r979",
      "r980"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and stockholders' equity",
        "label": "Liabilities and Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r67",
      "r483",
      "r721",
      "r724",
      "r726",
      "r883",
      "r885",
      "r916",
      "r977"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY",
        "label": "Liabilities and Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "label": "Liabilities, Current",
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r94",
      "r125",
      "r126",
      "r127",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r374",
      "r375",
      "r376",
      "r411",
      "r721",
      "r928",
      "r979",
      "r980"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "MaximumMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum [Member]",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r167",
      "r245",
      "r246",
      "r247",
      "r248",
      "r294",
      "r324",
      "r325",
      "r326",
      "r343",
      "r406",
      "r463",
      "r493",
      "r494",
      "r507",
      "r519",
      "r520",
      "r571",
      "r590",
      "r595",
      "r596",
      "r626",
      "r640",
      "r641",
      "r642",
      "r643",
      "r645",
      "r646",
      "r664",
      "r667",
      "r675",
      "r681",
      "r682",
      "r683",
      "r714",
      "r715",
      "r719",
      "r720",
      "r723",
      "r930",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]",
        "terseLabel": "Measure:"
       }
      }
     },
     "auth_ref": [
      "r807"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r807"
     ]
    },
    "esp_MilestonesAchievedMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "MilestonesAchievedMember",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Milestones Achieved [Member]",
        "documentation": "Units Delivered [Member]",
        "label": "Milestones Achieved Member"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_MnpiDiscTimedForCompValFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "MnpiDiscTimedForCompValFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "MNPI Disclosure Timed for Compensation Value [Flag]",
        "terseLabel": "MNPI Disclosure Timed for Compensation Value"
       }
      }
     },
     "auth_ref": [
      "r827"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "MtrlTermsOfTrdArrTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Terms of Trading Arrangement [Text Block]",
        "terseLabel": "Material Terms of Trading Arrangement"
       }
      }
     },
     "auth_ref": [
      "r835"
     ]
    },
    "us-gaap_MunicipalBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "MunicipalBondsMember",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Municipal bonds [Member]",
        "label": "Municipal Bonds [Member]",
        "documentation": "Long-term debt securities issued by state, city or local governments or the agencies operated by state, city or local governments."
       }
      }
     },
     "auth_ref": []
    },
    "dei_NameChangeEventDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NameChangeEventDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Name Change Event Date [Axis]",
        "documentation": "For a sequence of name change event related facts, use this typed dimension to distinguish them. The axis members are restricted to be a valid for xml schema 'date' or 'datetime' data type."
       }
      }
     },
     "auth_ref": []
    },
    "dei_NameChangeEventLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NameChangeEventLineItems",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Name Change Event [Line Items]",
        "documentation": "Line items represent concepts included in a table. Name change event line item concepts are used for information qualified by domain members of axes in the Name Change Event table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_NameChangeEventTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NameChangeEventTable",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Name Change Event [Table]",
        "documentation": "For a set of related facts in a sequence of name change events, use this table when the events occurred within a single reporting period."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NamedExecutiveOfficersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Named Executive Officers, Footnote [Text Block]",
        "terseLabel": "Named Executive Officers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "esp_NavysInvestmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "NavysInvestmentMember",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Navy\u2019s Investment [Member]",
        "label": "Navys Investment Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in financing activities",
        "label": "Cash Provided by (Used in) Financing Activity, Including Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from financing activity, including, but not limited to, discontinued operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r122"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Financing Activities:",
        "label": "Cash Provided by (Used in) Financing Activity, Including Discontinued Operation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in investing activities",
        "label": "Cash Provided by (Used in) Investing Activity, Including Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from investing activity, including, but not limited to, discontinued operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, property, plant, and equipment, and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r122"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Investing Activities:",
        "label": "Cash Provided by (Used in) Investing Activity, Including Discontinued Operation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by operating activities",
        "label": "Cash Provided by (Used in) Operating Activity, Including Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from operating activity, including, but not limited to, discontinued operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r54",
      "r55"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Operating Activities:",
        "label": "Cash Provided by (Used in) Operating Activity, Including Discontinued Operation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 1.0
      },
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow",
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable",
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income",
        "verboseLabel": "Net income",
        "netLabel": "Net income (in Dollars)",
        "label": "Net Income (Loss)",
        "terseLabel": "Net Income (Loss)",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r55",
      "r69",
      "r89",
      "r92",
      "r105",
      "r107",
      "r111",
      "r125",
      "r126",
      "r127",
      "r128",
      "r134",
      "r139",
      "r140",
      "r141",
      "r142",
      "r143",
      "r146",
      "r147",
      "r157",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r264",
      "r267",
      "r269",
      "r272",
      "r335",
      "r363",
      "r372",
      "r405",
      "r411",
      "r486",
      "r548",
      "r563",
      "r564",
      "r654",
      "r656",
      "r658",
      "r736",
      "r928"
     ]
    },
    "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Numerator:",
        "label": "Net Income (Loss) Available to Common Stockholders, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recently Issued Accounting Standards [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "presentation": [
      "http://espey.com/role/RecentlyIssuedAccountingStandards"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recently Issued Accounting Standards",
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]",
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle."
       }
      }
     },
     "auth_ref": [
      "r77",
      "r84",
      "r89",
      "r132",
      "r133",
      "r136",
      "r137",
      "r148",
      "r149",
      "r180",
      "r217",
      "r218",
      "r261",
      "r262",
      "r335",
      "r336",
      "r361",
      "r362",
      "r364",
      "r372",
      "r386",
      "r401",
      "r424",
      "r430",
      "r431",
      "r501",
      "r502",
      "r503",
      "r504",
      "r506"
     ]
    },
    "dei_NewEffectiveDateForPreviousFiling": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NewEffectiveDateForPreviousFiling",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "New Effective Date for Previous Filing"
       }
      }
     },
     "auth_ref": [
      "r778",
      "r779",
      "r780",
      "r781"
     ]
    },
    "dei_NoSubstantiveChanges462c": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NoSubstantiveChanges462c",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Substantive Changes, 462(c)"
       }
      }
     },
     "auth_ref": [
      "r852"
     ]
    },
    "dei_NoSubstantiveChanges462cFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NoSubstantiveChanges462cFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Substantive Changes, 462(c), File Number"
       }
      }
     },
     "auth_ref": [
      "r852"
     ]
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NoTradingSymbolFlag",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Trading Symbol Flag",
        "documentation": "Boolean flag that is true only for a security having no trading symbol."
       }
      }
     },
     "auth_ref": []
    },
    "esp_NonEmployeeDirectorsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "NonEmployeeDirectorsMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-Employee Directors [Member]",
        "documentation": "Non employee directors [Member]",
        "label": "Non Employee Directors Member"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonGaapMeasureDescriptionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-GAAP Measure Description [Text Block]",
        "terseLabel": "Non-GAAP Measure Description"
       }
      }
     },
     "auth_ref": [
      "r807"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-NEOs [Member]",
        "terseLabel": "Non-NEOs"
       }
      }
     },
     "auth_ref": [
      "r762",
      "r773",
      "r789",
      "r815",
      "r824"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonPeoNeoAvgCompActuallyPaidAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Compensation Actually Paid Amount",
        "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r798"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonPeoNeoAvgTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Total Compensation Amount",
        "terseLabel": "Non-PEO NEO Average Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r797"
     ]
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonPeoNeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO [Member]",
        "terseLabel": "Non-PEO NEO"
       }
      }
     },
     "auth_ref": [
      "r815"
     ]
    },
    "esp_NonQualifiedStockOptionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "NonQualifiedStockOptionsMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-qualified Stock Options [Member]",
        "verboseLabel": "Non-qualified stock options [Member]",
        "documentation": "Non-qualified stock options [Member]",
        "label": "Non Qualified Stock Options Member"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r835"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r835"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total other income",
        "label": "Nonoperating Income (Expense)",
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)."
       }
      }
     },
     "auth_ref": [
      "r48"
     ]
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NonoperatingIncomeExpenseAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other income",
        "label": "Nonoperating Income (Expense) [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating income",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r654",
      "r658",
      "r661",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896"
     ]
    },
    "us-gaap_OrderOrProductionBacklogMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OrderOrProductionBacklogMember",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Order or Production Backlog [Member]",
        "label": "Order or Production Backlog [Member]",
        "documentation": "Order or production backlog arising from contract acquired in business combination, asset acquisition, and from joint venture formation."
       }
      }
     },
     "auth_ref": [
      "r691",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_OtherAddressMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "OtherAddressMember",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Address [Member]",
        "documentation": "Other address for entity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherCommitmentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherCommitmentsLineItems",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (gain), net of tax",
        "label": "Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss) Arising During Period, after Tax",
        "documentation": "Amount, after tax, of gain (loss) for (increase) decrease in value of benefit obligation for change in actuarial assumptions and increase (decrease) in value of plan assets from experience different from that assumed of defined benefit plan, that has not been recognized in net periodic benefit (cost) credit."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r42",
      "r292",
      "r293"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income, net of tax:",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrealized gain on investment securities",
        "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax",
        "documentation": "Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale."
       }
      }
     },
     "auth_ref": [
      "r102",
      "r104",
      "r214"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (gain), net of tax",
        "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax",
        "documentation": "Amount, before adjustment, of tax expense (benefit) for unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes tax expense (benefit) for unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r103"
     ]
    },
    "us-gaap_OtherEmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherEmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Other Employee-related Liabilities, Current",
        "documentation": "Amount of obligations incurred for employer-related costs classified as other, payable within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r28"
     ]
    },
    "us-gaap_OtherNonoperatingIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherNonoperatingIncome",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Other Nonoperating Income",
        "documentation": "Amount of income related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r115"
     ]
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "OtherPerfMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Performance Measure, Amount",
        "terseLabel": "Other Performance Measure, Amount"
       }
      }
     },
     "auth_ref": [
      "r807"
     ]
    },
    "dei_OtherReportingStandardItemNumber": {
     "xbrltype": "otherReportingStandardItemNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "OtherReportingStandardItemNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Reporting Standard Item Number",
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS."
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "OutstandingAggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Aggregate Erroneous Compensation Amount",
        "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r760",
      "r771",
      "r787",
      "r822"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery Compensation Amount",
        "terseLabel": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r763",
      "r774",
      "r790",
      "r825"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r763",
      "r774",
      "r790",
      "r825"
     ]
    },
    "dei_ParentEntityLegalName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "ParentEntityLegalName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Parent Entity Legal Name",
        "documentation": "If the entity which the financial information concerns is a subsidiary of another company, then provide to full legal name of the parent entity"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PaymentsOfDividendsCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividends on common stock",
        "label": "Payments of Ordinary Dividends, Common Stock",
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity."
       }
      }
     },
     "auth_ref": [
      "r52"
     ]
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PaymentsToAcquireInvestments",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchase of investment securities",
        "label": "Payments to Acquire Investments",
        "documentation": "The cash outflow associated with the purchase of all investments (debt, security, other) during the period."
       }
      }
     },
     "auth_ref": [
      "r50"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Additions to property, plant and equipment",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PeerGroupIssuersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Issuers, Footnote [Text Block]",
        "terseLabel": "Peer Group Issuers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r806"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PeerGroupTotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Total Shareholder Return Amount",
        "terseLabel": "Peer Group Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r806"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PeoActuallyPaidCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Actually Paid Compensation Amount",
        "terseLabel": "PEO Actually Paid Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r798"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO [Member]",
        "terseLabel": "PEO"
       }
      }
     },
     "auth_ref": [
      "r815"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name",
        "terseLabel": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r808"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PeoTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Total Compensation Amount",
        "terseLabel": "PEO Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r797"
     ]
    },
    "esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Percentage of total number of shares subject to options or awards, single fiscal year",
        "documentation": "Percentage of total number of shares subject to options or awards, single fiscal year.",
        "label": "Percentage Of Total Number Of Shares Subject To Options Or Awards Single Fiscal Year"
       }
      }
     },
     "auth_ref": []
    },
    "dei_PhoneFaxNumberDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PhoneFaxNumberDescription",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Phone Fax Number Description",
        "documentation": "Description of Phone or Fax Number"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r959"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r959"
     ]
    },
    "ecd_PnsnAdjsPrrSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PnsnAdjsPrrSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Prior Service Cost [Member]",
        "terseLabel": "Pension Adjustments Prior Service Cost"
       }
      }
     },
     "auth_ref": [
      "r799"
     ]
    },
    "ecd_PnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Service Cost [Member]",
        "terseLabel": "Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r844"
     ]
    },
    "ecd_PnsnBnftsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PnsnBnftsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Benefits Adjustments, Footnote [Text Block]",
        "terseLabel": "Pension Benefits Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r798"
     ]
    },
    "dei_PostEffectiveAmendment": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PostEffectiveAmendment",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Post-Effective Amendment"
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "dei_PostEffectiveAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PostEffectiveAmendmentNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Post-Effective Amendment Number",
        "documentation": "Amendment number to registration statement under the Securities Act of 1933 after the registration becomes effective."
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Issuer Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r746"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r748"
     ]
    },
    "dei_PreEffectiveAmendment": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreEffectiveAmendment",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-Effective Amendment"
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "dei_PreEffectiveAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreEffectiveAmendmentNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-Effective Amendment Number",
        "documentation": "Amendment number to registration statement under the Securities Act of 1933 before the registration becomes effective."
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses and other current assets",
        "label": "Prepaid Expense and Other Assets, Current",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r875"
     ]
    },
    "esp_ProceedsFromGrantAward": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ProceedsFromGrantAward",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from grant award",
        "documentation": "Proceeds from grant award.\r     \n.",
        "label": "Proceeds From Grant Award"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromRepurchaseOfEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProceedsFromRepurchaseOfEquity",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from exercise of stock options",
        "label": "Proceeds from (Repurchase of) Equity",
        "documentation": "The net cash inflow or outflow resulting from the entity's share transaction."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale/maturity of investment securities",
        "label": "Proceeds from Sale and Maturity of Debt Securities, Available-for-Sale",
        "documentation": "Amount of cash inflow from sale, maturity, prepayment and call of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r121",
      "r900"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of property, plant and equipment",
        "label": "Proceeds from Sale of Property, Plant, and Equipment",
        "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r49"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant, and equipment amount",
        "label": "Property, Plant and Equipment, Gross",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r96",
      "r484"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment, net",
        "label": "Property, Plant and Equipment, Net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r422",
      "r475",
      "r484",
      "r721"
     ]
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PvpTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Table]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "PvpTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance [Table Text Block]",
        "terseLabel": "Pay vs Performance Disclosure, Table"
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "RangeAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r167",
      "r245",
      "r246",
      "r247",
      "r248",
      "r291",
      "r294",
      "r324",
      "r325",
      "r326",
      "r332",
      "r343",
      "r406",
      "r438",
      "r447",
      "r463",
      "r493",
      "r494",
      "r507",
      "r519",
      "r520",
      "r571",
      "r590",
      "r595",
      "r596",
      "r626",
      "r640",
      "r641",
      "r642",
      "r643",
      "r645",
      "r646",
      "r664",
      "r667",
      "r675",
      "r681",
      "r682",
      "r683",
      "r714",
      "r715",
      "r719",
      "r720",
      "r723",
      "r730",
      "r926",
      "r930",
      "r971",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "RangeMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r167",
      "r245",
      "r246",
      "r247",
      "r248",
      "r291",
      "r294",
      "r324",
      "r325",
      "r326",
      "r332",
      "r343",
      "r406",
      "r438",
      "r447",
      "r463",
      "r493",
      "r494",
      "r507",
      "r519",
      "r520",
      "r571",
      "r590",
      "r595",
      "r596",
      "r626",
      "r640",
      "r641",
      "r642",
      "r643",
      "r645",
      "r646",
      "r664",
      "r667",
      "r675",
      "r681",
      "r682",
      "r683",
      "r714",
      "r715",
      "r719",
      "r720",
      "r723",
      "r730",
      "r926",
      "r930",
      "r971",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986"
     ]
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]",
        "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure"
       }
      }
     },
     "auth_ref": [
      "r755",
      "r766",
      "r782",
      "r817"
     ]
    },
    "dei_RegistrationStatementAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "RegistrationStatementAmendmentNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Registration Statement Amendment Number",
        "documentation": "Amendment number to registration statement under the Investment Company Act of 1940."
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "RestatementDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date [Axis]",
        "terseLabel": "Restatement Determination Date:"
       }
      }
     },
     "auth_ref": [
      "r756",
      "r767",
      "r783",
      "r818"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date",
        "terseLabel": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r757",
      "r768",
      "r784",
      "r819"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "RestatementDoesNotRequireRecoveryTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Does Not Require Recovery [Text Block]",
        "terseLabel": "Restatement does not require Recovery"
       }
      }
     },
     "auth_ref": [
      "r764",
      "r775",
      "r791",
      "r826"
     ]
    },
    "esp_RestrictedStockPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "RestrictedStockPlanMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Stock Plan [Member]",
        "label": "Restricted Stock Plan Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained earnings",
        "label": "Retained Earnings (Accumulated Deficit)",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r37",
      "r59",
      "r482",
      "r501",
      "r506",
      "r510",
      "r530",
      "r721"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained Earnings",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r81",
      "r88",
      "r89",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r145",
      "r147",
      "r216",
      "r221",
      "r241",
      "r263",
      "r335",
      "r349",
      "r350",
      "r358",
      "r359",
      "r360",
      "r364",
      "r371",
      "r372",
      "r380",
      "r383",
      "r384",
      "r388",
      "r403",
      "r419",
      "r421",
      "r497",
      "r499",
      "r511",
      "r991"
     ]
    },
    "esp_RevenueDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "RevenueDetailsTable",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue recognized contract liabilities",
        "label": "Revenue from Contract with Customer, Including Assessed Tax",
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise."
       }
      }
     },
     "auth_ref": [
      "r70",
      "r71",
      "r165",
      "r169",
      "r170",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r286",
      "r287",
      "r288",
      "r465"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://espey.com/role/Revenue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Revenue from Contract with Customer [Text Block]",
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts."
       }
      }
     },
     "auth_ref": [
      "r78",
      "r277",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r288",
      "r290"
     ]
    },
    "us-gaap_Revenues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Revenues",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net sales",
        "verboseLabel": "Revenue",
        "label": "Revenues",
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss)."
       }
      }
     },
     "auth_ref": [
      "r70",
      "r71",
      "r112",
      "r125",
      "r126",
      "r127",
      "r165",
      "r169",
      "r170",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r215",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r411",
      "r470",
      "r472",
      "r662",
      "r711",
      "r724",
      "r726",
      "r928"
     ]
    },
    "us-gaap_RevenuesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RevenuesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r835"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r835"
     ]
    },
    "srt_ScenarioUnspecifiedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ScenarioUnspecifiedDomain",
     "presentation": [
      "http://espey.com/role/RevenueDetails",
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]"
       }
      }
     },
     "auth_ref": [
      "r90",
      "r91",
      "r148",
      "r295",
      "r859"
     ]
    },
    "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Contractual Maturities of Available-for-Sale Debt Securities [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195"
     ]
    },
    "esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Contractual Maturities Of Available For Sale Debt Securities Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Cost Gross Unrealized Gains Gross Unrealized Losses And Fair Value Of Available For Sale Debt Securities Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Denominators Of The Basic And Diluted Earnings Per Share Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://espey.com/role/NetIncomePerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Denominators of the Basic and Diluted Earnings Per Share",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r891"
     ]
    },
    "us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of ESOP Shares",
        "label": "Employee Stock Ownership Plan (ESOP) Disclosures [Table Text Block]",
        "documentation": "Tabular disclosure of the details pertaining to each employee stock ownership plan."
       }
      }
     },
     "auth_ref": [
      "r678",
      "r679",
      "r963"
     ]
    },
    "us-gaap_ScheduleOfInvestmentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfInvestmentsLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value of Available-For-Sale Debt Securities [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r592",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635"
     ]
    },
    "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfNonvestedShareActivityTableTextBlock",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Changes in Non-Vested Stock Options",
        "label": "Schedule of Nonvested Share Activity [Table Text Block]",
        "documentation": "Tabular disclosure of the changes in outstanding nonvested shares."
       }
      }
     },
     "auth_ref": [
      "r61"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Stock Option Activity",
        "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]",
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r11",
      "r60"
     ]
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Weighted Average Assumptions of Option Award",
        "label": "Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]",
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions."
       }
      }
     },
     "auth_ref": [
      "r63"
     ]
    },
    "esp_ScheduleOfStockOptionActivityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ScheduleOfStockOptionActivityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Stock Option Activity Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Security12bTitle",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r740"
     ]
    },
    "dei_Security12gTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Security12gTitle",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(g) Security",
        "documentation": "Title of a 12(g) registered security."
       }
      }
     },
     "auth_ref": [
      "r744"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "dei_SecurityReportingObligation": {
     "xbrltype": "securityReportingObligationItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SecurityReportingObligation",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Reporting Obligation",
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r749"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SellingGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Selling, general and administrative expenses",
        "label": "Selling, General and Administrative Expense",
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r653",
      "r654",
      "r655",
      "r658",
      "r880"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting period",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition."
       }
      }
     },
     "auth_ref": [
      "r676"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Changes in Non-Vested Stock Options [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average fair value per share of options granted during the period (in Dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r315"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividend yield",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term."
       }
      }
     },
     "auth_ref": [
      "r325"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Company\u2019s expected volatility",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Volatility Rate",
        "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period."
       }
      }
     },
     "auth_ref": [
      "r324"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Risk-free interest rate",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Risk Free Interest Rate",
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares."
       }
      }
     },
     "auth_ref": [
      "r326"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Weighted Average Assumptions of Option Award [Abstract]",
        "terseLabel": "Schedule of Stock Option Activity [Abstract]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r297",
      "r298",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r332"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Authorized shares under plan (in Shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized",
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r677"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shares remain available for grant (in Shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Outstanding shares (in Shares)",
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Option Outstanding Number"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of Shares Subject to Option, Exercisable",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number",
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan."
       }
      }
     },
     "auth_ref": [
      "r306"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Exercise Price, Exercisable",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r306"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate intrinsic value of options exercised",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares."
       }
      }
     },
     "auth_ref": [
      "r319"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Number of Shares Subject to Option, Forfeited or expired",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period",
        "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired."
       }
      }
     },
     "auth_ref": [
      "r940"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Exercise Price, Forfeited or expired",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price",
        "documentation": "Weighted average price of options that were either forfeited or expired."
       }
      }
     },
     "auth_ref": [
      "r940"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable",
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of Shares Subject to Option, Granted",
        "verboseLabel": "Weighted Number of Shares Subject to Option, Granted",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "documentation": "Gross number of share options (or share units) granted during the period."
       }
      }
     },
     "auth_ref": [
      "r308"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Average Grant Date Fair Value (per Option), Granted",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology."
       }
      }
     },
     "auth_ref": [
      "r318"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Aggregate Intrinsic Value, Ending",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value",
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Number of Shares Subject to Option, Ending",
        "terseLabel": "Shares outstanding options (in Shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number",
        "documentation": "Number of options outstanding, including both vested and non-vested options."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r305"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Weighted Average Exercise Price, Ending",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r305"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate Intrinsic Value, Vested or expected to vest",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r320"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of Shares Subject to Option, Vested or expected to vest",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number",
        "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r320"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Exercise Price, Vested or expected to vest",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price",
        "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r320"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Award Types",
        "terseLabel": "All Award Types",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Exercise Price, Exercised",
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares."
       }
      }
     },
     "auth_ref": [
      "r309"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Exercise Price, Granted",
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options."
       }
      }
     },
     "auth_ref": [
      "r308"
     ]
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Based Compensation [Line Item]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected term",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Term",
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r323"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate Intrinsic Value, Exercisable",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value",
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Exercisable",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Exercised",
        "documentation": "Represent the weighted average remaining contractual term, Exercised.",
        "label": "Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercised Weighted Average Remaining Contractual Term"
       }
      }
     },
     "auth_ref": []
    },
    "esp_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Forfeited or expired",
        "documentation": "Represent the weighted average remaining contractual term, Forfeited or expired.",
        "label": "Sharebased Compensation Arrangement By Sharebased Payment Award Options Forfeited And Expired Weighted Average Remaining Contractual Term"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Weighted Number of Shares Subject to Option, Non-vested Beginning",
        "periodEndLabel": "Weighted Number of Shares Subject to Option, Non-vested Ending",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares",
        "documentation": "Number of non-vested options outstanding."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Weighted Number of Shares Subject to Option, Forfeited or expired",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares",
        "documentation": "Number of non-vested options forfeited."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Average Grant Date Fair Value (per Option), Forfeited or expired",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average grant-date fair value of non-vested options forfeited."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Average Grant Date Fair Value (per Option), Non-vested Beginning",
        "periodEndLabel": "Average Grant Date Fair Value (per Option), Non-vested Ending",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price",
        "documentation": "Weighted average grant-date fair value of non-vested options outstanding."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate number of common stock (in Shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Number of Shares, Period Increase (Decrease)",
        "documentation": "Number of increase (decrease) of non-vested options."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Ending",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Vested or expected to vest",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r320"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Weighted Number of Shares Subject to Option, Vested",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares",
        "documentation": "Number of options vested."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Average Grant Date Fair Value (per Option), Vested",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average grant-date fair value of options vested."
       }
      }
     },
     "auth_ref": [
      "r961"
     ]
    },
    "us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharesHeldInEmployeeStockOwnershipPlanAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Soliciting Material",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r747"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r35",
      "r38",
      "r39",
      "r81",
      "r88",
      "r89",
      "r109",
      "r110",
      "r111",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r145",
      "r147",
      "r166",
      "r216",
      "r221",
      "r241",
      "r263",
      "r274",
      "r335",
      "r349",
      "r350",
      "r358",
      "r359",
      "r360",
      "r364",
      "r371",
      "r372",
      "r380",
      "r382",
      "r383",
      "r384",
      "r385",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r403",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r421",
      "r429",
      "r487",
      "r497",
      "r498",
      "r499",
      "r511",
      "r565"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementLineItems",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r129",
      "r130",
      "r131",
      "r166",
      "r265",
      "r266",
      "r268",
      "r270",
      "r421",
      "r465",
      "r509",
      "r512",
      "r513",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r529",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r565",
      "r656",
      "r658",
      "r731",
      "r990"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StatementScenarioAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "StatementScenarioAxis",
     "presentation": [
      "http://espey.com/role/RevenueDetails",
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]"
       }
      }
     },
     "auth_ref": [
      "r90",
      "r91",
      "r148",
      "r295",
      "r859",
      "r860"
     ]
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementTable",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Presentation of information about comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r129",
      "r130",
      "r131",
      "r166",
      "r181",
      "r265",
      "r266",
      "r268",
      "r270",
      "r421",
      "r465",
      "r509",
      "r512",
      "r513",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r529",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r565",
      "r656",
      "r658",
      "r731",
      "r990"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "StkPrcOrTsrEstimationMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Price or TSR Estimation Method [Text Block]",
        "terseLabel": "Stock Price or TSR Estimation Method"
       }
      }
     },
     "auth_ref": [
      "r759",
      "r770",
      "r786",
      "r821"
     ]
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockAppreciationRightsSARSMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Appreciation Rights (SARs) [Member]",
        "terseLabel": "Stock Appreciation Rights (SARs)",
        "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period."
       }
      }
     },
     "auth_ref": [
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r959"
     ]
    },
    "esp_StockBasedCompensationDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "StockBasedCompensationDetailsTable",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Based Compensation (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "StockBasedCompensationScheduleofStockOptionActivityDetailsTable",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Based Compensation - Schedule of Stock Option Activity (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodSharesEmployeeBenefitPlan",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shares distributed (in Shares)",
        "label": "Stock Issued During Period, Shares, Employee Benefit Plan",
        "documentation": "Number of shares issued during the period to an employee benefit plan, such as a defined contribution or defined benefit plan."
       }
      }
     },
     "auth_ref": [
      "r931"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Unearned ESOP shares",
        "label": "Stock Issued During Period, Shares, Employee Stock Ownership Plan",
        "documentation": "Number of shares of capital stock issued (purchased by employees) in connection with an employee stock ownership plan."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r34",
      "r35",
      "r59",
      "r339"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable",
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock options exercised (in Shares)",
        "negatedLabel": "Number of Shares Subject to Option, Exercised",
        "verboseLabel": "Shares exercised options (in Shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r34",
      "r35",
      "r59",
      "r309"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock options exercised",
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "documentation": "Value of stock issued as a result of the exercise of stock options."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r35",
      "r38",
      "r39",
      "r59"
     ]
    },
    "us-gaap_StockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockOptionMember",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Option [Member]",
        "label": "Equity Option [Member]",
        "documentation": "Contracts conveying rights, but not obligations, to buy or sell a specific quantity of stock at a specified price during a specified period (an American option) or at a specified date (a European option)."
       }
      }
     },
     "auth_ref": [
      "r730",
      "r966"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet",
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total stockholders\u2019 equity",
        "periodStartLabel": "Balance",
        "periodEndLabel": "Balance",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r38",
      "r39",
      "r56",
      "r531",
      "r547",
      "r566",
      "r567",
      "r721",
      "r737",
      "r883",
      "r884",
      "r885",
      "r916",
      "r977",
      "r991"
     ]
    },
    "us-gaap_SupplementalCashFlowElementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SupplementalCashFlowElementsAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Supplemental Schedule of Cash Flow Information:",
        "label": "Supplemental Cash Flow Elements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TabularListTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tabular List [Table Text Block]",
        "terseLabel": "Tabular List, Table"
       }
      }
     },
     "auth_ref": [
      "r814"
     ]
    },
    "us-gaap_TaxesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TaxesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income taxes payable",
        "label": "Taxes Payable, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r27",
      "r28"
     ]
    },
    "esp_TerminationWithdrawalObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "TerminationWithdrawalObligation",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Termination withdrawal obligation",
        "documentation": "Amount of Termination withdrawal obligation.",
        "label": "Termination Withdrawal Obligation"
       }
      }
     },
     "auth_ref": []
    },
    "srt_TitleOfIndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Axis]"
       }
      }
     },
     "auth_ref": [
      "r897",
      "r978"
     ]
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Amount",
        "terseLabel": "Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r806"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TotalShareholderRtnVsPeerGroupTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Vs Peer Group [Text Block]",
        "terseLabel": "Total Shareholder Return Vs Peer Group"
       }
      }
     },
     "auth_ref": [
      "r813"
     ]
    },
    "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "TotalStockholdersEquityBeforyEsopAndTreasuryStock",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total stockholders equity before ESOP",
        "documentation": "Total of all stockholders' equity (deficit) items, before ESOP and Treasury stock.",
        "label": "Total Stockholders Equity Befory Esop And Treasury Stock"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TradingArrAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement [Axis]",
        "terseLabel": "Trading Arrangement:"
       }
      }
     },
     "auth_ref": [
      "r834"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TradingArrByIndTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangements, by Individual [Table]",
        "terseLabel": "Trading Arrangements, by Individual"
       }
      }
     },
     "auth_ref": [
      "r836"
     ]
    },
    "us-gaap_TradingSecuritiesDebtAmortizedCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TradingSecuritiesDebtAmortizedCost",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amortized Cost",
        "label": "Debt Securities, Trading, Amortized Cost",
        "documentation": "Amortized cost of investments in debt securities classified as trading."
       }
      }
     },
     "auth_ref": [
      "r477",
      "r871"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "TradingSymbol",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instruments [Domain]",
        "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r258",
      "r273",
      "r377",
      "r393",
      "r407",
      "r410",
      "r412",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r476",
      "r488",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r722",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r912",
      "r913",
      "r914",
      "r915",
      "r969",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976"
     ]
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Adoption Date",
        "terseLabel": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r837"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Duration",
        "terseLabel": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r838"
     ]
    },
    "ecd_TrdArrExpirationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrExpirationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Expiration Date",
        "terseLabel": "Expiration Date"
       }
      }
     },
     "auth_ref": [
      "r838"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r836"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Title",
        "terseLabel": "Title"
       }
      }
     },
     "auth_ref": [
      "r836"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrSecuritiesAggAvailAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Securities Aggregate Available Amount",
        "terseLabel": "Aggregate Available"
       }
      }
     },
     "auth_ref": [
      "r839"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Termination Date",
        "terseLabel": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r837"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury Stock",
        "label": "Treasury Stock, Common [Member]",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r21"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance (in Shares)",
        "periodEndLabel": "Balance (in Shares)",
        "terseLabel": "Treasury stock, shares",
        "label": "Treasury Stock, Common, Shares",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r21"
     ]
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TreasuryStockValue",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Cost of 313,316 and 395,916 shares of common stock in treasury as of March 31, 2025 and June 30, 2024, respectively",
        "label": "Treasury Stock, Value",
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r22",
      "r35",
      "r38"
     ]
    },
    "esp_TwoThousandSevenPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "TwoThousandSevenPlanMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2007 Plan [Member]",
        "documentation": "Name of the equity-based compensation arrangement plan.",
        "label": "Two Thousand Seven Plan Member"
       }
      }
     },
     "auth_ref": []
    },
    "esp_TwoThousandSeventeenPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "TwoThousandSeventeenPlanMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2017 Plan [Member]",
        "documentation": "2017 Plan [Member]",
        "label": "Two Thousand Seventeen Plan Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TypeOfAdoptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "TypeOfAdoptionMember",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Domain]",
        "documentation": "Amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r79",
      "r80",
      "r81",
      "r82",
      "r83",
      "r84",
      "r85",
      "r86",
      "r87",
      "r88",
      "r89",
      "r117",
      "r118",
      "r119",
      "r134",
      "r135",
      "r136",
      "r137",
      "r138",
      "r148",
      "r179",
      "r180",
      "r216",
      "r219",
      "r220",
      "r221",
      "r240",
      "r241",
      "r242",
      "r259",
      "r260",
      "r263",
      "r264",
      "r333",
      "r334",
      "r335",
      "r336",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r387",
      "r388",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r402",
      "r403",
      "r404",
      "r405",
      "r408",
      "r409",
      "r419",
      "r420",
      "r423",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506"
     ]
    },
    "us-gaap_USTreasuryBillSecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "USTreasuryBillSecuritiesMember",
     "presentation": [
      "http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "U.S. Treasury bills [Member]",
        "label": "US Treasury Bill Securities [Member]",
        "documentation": "This category includes information about negotiable debt securities issued by the United States Department of the Treasury which generally have maturities of one year or less, are interest bearing, and are backed by the full faith and credit of the United States government."
       }
      }
     },
     "auth_ref": [
      "r987"
     ]
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "UndrlygSecurityMktPriceChngPct",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Underlying Security Market Price Change, Percent",
        "terseLabel": "Underlying Security Market Price Change"
       }
      }
     },
     "auth_ref": [
      "r833"
     ]
    },
    "esp_UnearnedESOPSharesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "UnearnedESOPSharesMember",
     "presentation": [
      "http://espey.com/role/StatementsofChangesinStockholdersEquityUnauditedTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unearned ESOP Shares",
        "documentation": "Information pertaining to unearned employee stock ownership plan shares.",
        "label": "Unearned ESOPShares Member"
       }
      }
     },
     "auth_ref": []
    },
    "esp_UnearnedEsopSharesCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "UnearnedEsopSharesCost",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: Unearned ESOP shares",
        "documentation": "Unearned ESOP shares.",
        "label": "Unearned Esop Shares Cost"
       }
      }
     },
     "auth_ref": []
    },
    "esp_UnitsDeliveredMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "UnitsDeliveredMember",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Units Delivered [Member]",
        "documentation": "Units Delivered [Member]",
        "label": "Units Delivered Member"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]",
        "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r802"
     ]
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average ESOP shares earned during the period",
        "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment",
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation."
       }
      }
     },
     "auth_ref": [
      "r891"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted (in Shares)",
        "verboseLabel": "Weighted average common shares",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period."
       }
      }
     },
     "auth_ref": [
      "r152",
      "r160"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average common shares",
        "label": "Weighted Average Number of Shares, Common Stock Subject to Repurchase or Cancellation",
        "documentation": "Number of shares of common stock subject to repurchase or cancellation determined by relating the portion of time within a reporting period that these shares have been outstanding to the total time in that period. Common stock subject to repurchase are outstanding common shares that are contingently returnable (that is, subject to recall)."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average common shares issued during the period",
        "label": "Weighted Average Number of Shares, Employee Stock Ownership Plan Shares Not Committed to be Released",
        "documentation": "Number of employee stock ownership plan (ESOP) shares that have not been committed to be released determined by relating the portion of time within a reporting period that these shares have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r962"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesIssuedBasic",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average ESOP shares earned during the period",
        "label": "Weighted Average Number of Shares Issued, Basic",
        "documentation": "This element represents the weighted average total number of shares issued throughout the period including the first (beginning balance outstanding) and last (ending balance outstanding) day of the period before considering any reductions (for instance, shares held in treasury) to arrive at the weighted average number of shares outstanding. Weighted average relates to the portion of time within a reporting period that common shares have been issued and outstanding to the total time in that period. Such concept is used in determining the weighted average number of shares outstanding for purposes of calculating earnings per share (basic)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r19"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average number of shares outstanding:",
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic (in Shares)",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r160"
     ]
    },
    "esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20250331",
     "localname": "WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Granted",
        "documentation": "Represent the weighted average remaining contractual term, Granted.",
        "label": "Weighted Average Remaining Contr Sharebased Compensation Arrangement By Sharebased Payment Award Options Granted Weighted Average Remaining Contractual Termactual Term Granted"
       }
      }
     },
     "auth_ref": []
    },
    "dei_WrittenCommunications": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Written Communications",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act."
       }
      }
     },
     "auth_ref": [
      "r850"
     ]
    },
    "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2025",
     "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]",
        "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r800"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-12"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "SubTopic": "405",
   "Topic": "942",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477787/942-405-45-2"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "405",
   "Topic": "942",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478353/942-405-50-1"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-13"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "710",
   "SubTopic": "10",
   "Section": "25",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483070/710-10-25-3"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r74": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r75": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r76": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r77": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/250/tableOfContent"
  },
  "r78": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r79": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r80": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r81": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r82": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r83": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r84": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-7"
  },
  "r85": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r86": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r87": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r89": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r90": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481003/205-10-S50-2"
  },
  "r91": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SAB Topic 1.B.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480922/205-10-S99-7"
  },
  "r92": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7"
  },
  "r93": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r94": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5"
  },
  "r95": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r96": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r97": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r98": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r99": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r100": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r101": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r102": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r103": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r104": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r105": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r106": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r107": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r108": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r114": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(7)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476151/220-40-65-1"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476151/220-40-65-1"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476151/220-40-65-1"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-11"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-1"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r138": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r139": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r140": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9"
  },
  "r148": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-5"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-6"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476173/280-10-65-1"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476173/280-10-65-1"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-2"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479130/326-30-45-1"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477123/405-50-65-1"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-1"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-2"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-3"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479857/480-10-S50-1"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479857/480-10-S50-3"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3A",
   "Subparagraph": "(24)(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-3A"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-11"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-7"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479983/718-10-S45-1"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480520/718-40-45-2"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-9"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-9"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-9"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479845/805-20-65-3"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479845/805-20-65-3"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479845/805-20-65-3"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8A"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482477/820-10-65-13"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482477/820-10-65-13"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-32"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-1"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-1"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481444/860-30-45-1"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(4)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-11"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "928",
   "SubTopic": "340",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478671/942-235-S50-1"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478898/942-825-50-1"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.W.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "805",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478072/944-805-50-1"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-6"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column B)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "19",
   "Subparagraph": "(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-19"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "19",
   "Subparagraph": "(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-19"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column B)(Footnote 10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5D",
   "Subparagraph": "(SX 210.12-13D(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5D"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 5)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478322/948-310-S50-2"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "40",
   "SubTopic": "30",
   "Topic": "350",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-12"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-11"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-14"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-18"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-21"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-24"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-4"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "64",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481620/480-10-55-64"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480459/718-40-55-20"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480459/718-40-55-9"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-8"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "43",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-43"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-47"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-29"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-29"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "101",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "103",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-11"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-12"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-14"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-15"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "Global LEI Foundation"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "g"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12, 13, 15d"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14a",
   "Subsection": "12"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "15",
   "Subsection": "d"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "249",
   "Section": "308",
   "Subsection": "a"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 8-K",
   "Number": "249",
   "Section": "308"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form F-3"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-2"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-3"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-4"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-6"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r783": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r784": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r785": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r786": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r787": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r788": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r789": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r791": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r792": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form S-3"
  },
  "r793": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r794": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Investment Company Act",
   "Number": "270"
  },
  "r795": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r796": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "i"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iii"
  },
  "r803": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iv"
  },
  "r804": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "v"
  },
  "r805": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "vi"
  },
  "r806": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r807": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r810": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r819": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r820": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r823": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r826": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r827": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r828": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r829": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "A"
  },
  "r830": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "C"
  },
  "r831": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "D"
  },
  "r832": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "E"
  },
  "r833": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "F"
  },
  "r834": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r835": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r836": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r837": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r838": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r839": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r840": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r841": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Number": "229",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1"
  },
  "r842": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "A",
   "Number": "229"
  },
  "r843": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Number": "229"
  },
  "r844": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "i",
   "Number": "229"
  },
  "r845": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "313"
  },
  "r846": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r847": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-X",
   "Number": "210",
   "Section": "2",
   "Subsection": "2"
  },
  "r848": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r849": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "413",
   "Subsection": "b"
  },
  "r850": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  },
  "r851": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "b"
  },
  "r852": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "c"
  },
  "r853": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "d"
  },
  "r854": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "e"
  },
  "r855": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "486",
   "Subsection": "a"
  },
  "r856": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "486",
   "Subsection": "b"
  },
  "r857": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "7A",
   "Section": "B",
   "Subsection": "2"
  },
  "r858": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Section": "8",
   "Subsection": "c"
  },
  "r859": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-10"
  },
  "r860": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-3"
  },
  "r861": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Topic": "321",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/321/tableOfContent"
  },
  "r862": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Topic": "325",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/325/tableOfContent"
  },
  "r863": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r864": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r865": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r866": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r867": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r868": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r869": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r870": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "205",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205/tableOfContent"
  },
  "r871": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r872": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r873": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r874": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r875": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r876": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r877": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r878": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r879": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(7)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r880": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r881": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r882": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r883": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-1"
  },
  "r884": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r885": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r886": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r887": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r888": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r889": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r890": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r891": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r892": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r893": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r894": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r895": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r896": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r897": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r898": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r899": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/320/tableOfContent"
  },
  "r900": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-11"
  },
  "r901": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r902": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r903": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r904": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r905": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r906": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r907": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r908": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r909": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r910": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r911": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r912": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9"
  },
  "r913": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r914": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r915": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r916": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r917": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r918": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r919": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r920": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r921": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r922": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r923": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r924": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r925": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r926": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10"
  },
  "r927": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r928": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r929": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r930": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r931": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r932": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r933": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2"
  },
  "r934": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r935": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r936": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r937": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r938": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r939": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r940": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r941": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r942": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r943": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r944": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r945": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r946": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r947": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r948": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r949": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r950": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r951": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r952": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r953": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r954": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r955": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r956": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r957": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r958": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r959": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r960": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r961": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-4"
  },
  "r962": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480520/718-40-45-3"
  },
  "r963": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r964": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r965": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r966": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r967": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r968": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r969": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B"
  },
  "r970": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r971": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r972": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r973": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r974": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r975": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10"
  },
  "r976": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-11"
  },
  "r977": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r978": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-2"
  },
  "r979": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r980": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r981": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r982": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r983": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r984": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r985": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r986": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r987": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r988": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r989": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r990": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r991": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r992": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>54
<FILENAME>0001174947-25-000741-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001174947-25-000741-xbrl.zip
M4$L#!!0    ( %& K%J\#1^&VM,  '2]"P 0    97-P+3(P,C4P,S,Q+FAT
M;>R]>U?;2K(W_#^?HL=G7Y*U9-!=,F3[6820/3Q/ AP@<\Z\_\QJK 9K(DO>
MDIS ?/JWNB49&\NV;$NR;&JOM8'8NE37KVY=75W]X?\\#3SR@X61&_A__*X<
MRK\3YO<"Q_4?__C]]/;LXN+W_],]^/"W=IO\R7P6TI@YY/Z9G 6#X6W/)7<A
M]:.'(!R0=_'@/6F3?AP/CX^.?O[\>=B#:Z*>&[(H&(4]%O$/2+N=/NXL9/QA
MQ^1KX).O])DH*E'L8\,Z5BWR[>Z,J+)J))?W8R 2"/6CX_29?[32]^2]HY5>
MZ["7ZY[N0^\P8KW#Q^#'$7QQQ)\^OC .QQ=RPL7%0?AX!%\<Q<]#QJ_6V[+2
MUI3L'M9S\A\.7TP]G$7#\87P-WOF)(HK9.WE<6X4Z*IBY9.ARK)VE%XQON%I
MWK4*7.M[KL_^]^/-EY?+X_SK7RX]BC,L:0S2P$F4V[+:5M2)A[1AF%,/RH:]
MZ#F*T9;M"=[!E=\7C)1_?4\CEET>A2^T/]#H7EP)'TZQ>12U'RD=SEZ8?O'Z
M8@YKE'NU^&;J<DZ>\TJ64FK-H^3+R4O=12CZ44S]WGAL3]Z"B__W"W#BY<K7
M7/NIB4N53J=S)+X=7QKE70>/5([^]^N7VUZ?#6A[AI+(7?VN^?1PG6UQW674
MZ1X0_M^'V(T]UCV_O2:9^'\X2CX[./@P8#$EO<"/F0]PQ^PI/A+/$!:ES?X:
MN3_^:)TEW[?O */6$3S^*'G^A_O >>Y^<-P?)(J?/?9'ZP&N/":*/(S)G3M@
M$;ED/\E-,*"^E'P@D5L6N@\M<1<0 /]]..)_"NOTV64>V*:;D<?:U_21<4,T
M^?@!#1]=OQT'0WB).HQ/2/K)?1#'P>"8:/RSGZX3]SD5\J^M&>K:D?L?!E_R
M"^^#T&%A\KB/'NU])_!,$@6>ZXR_S)Z<?*]DW[>ZO_V78LHG*?$S0SB:&4-W
M/-+AJMS*AGE,^*5R\O/0</T3PA%K4\]]A"][@!$+T\]<WV'\Z6UQ(?#A:%@J
M&05>#5?!>^^[WRXO[LX_D=N[T[OSVP]']Y.TU$_-[?G9MYN+NXOS6W)Z^8F<
M_^_9WT\O_SP_.+OZ^O7B]O;BZO(5B26A!O^;*Q'Z/S3J0T 0!_#<3X?D[!#T
MU] [A:B[#SP'_'JE)'Z^NOE*/KA/QW[@7XX&\+Q>8DF>XAOV\$>K)[>(3P=
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
MQ!#47)_>W)$+$=]DG_'G\Q+//UHJZ! E_9#;MO^BO)BIU?U\<7EZ>79Q^H6
M0;VZ^7IZ)RJJ:7?Z&7->GNCG-$_%E*4%E/QY_A)GK3"&5Y,-^= 2!?$3L>?J
M5RZZ>]Z8QD^=*=Q/1SCQS%7'F$OC1<Q S:8_F\5K')6)M6.1G3LN Z^R1U,2
M"ENB=)KOH#@?J<=W]! (L%@<D39Y*?<56_#>??/IR'$A)'\O$E'_=^0SHLGB
M6[T,?!2$)@\:K=5]400>;?'@-V1]!K.?'XSP<K$!FT*G3>[@?B90NH0@GF^M
MY%G(<S%O>@4KOZ@L!%5$, ]!?09!,7F*^-Q*!.O]P .O"',G6U4L"(W^&D$P
M/P6I^$HY23/V6X)70WCSX#5FX*51GWSV@I_1*[6L%2T+T<I#2R178U"^."!Y
MH<8D9&7 8+]%&$2@IRZ"P>+;B7R8@7*F_QZ13V[4&R5;+K@2G/K4>XY<H4XO
M*)T%OI-D_/@U-RP:>8G&70U94@,;E1*(&&\6,VT19K:8//-,$Q4KJ1P$^,#+
M_LTQ]()HQ#-$]#X8\218^)W%Y,:-OI<27[S)$%$ HR\"IL-KA?PXA&FP .4Z
M#'K,X3@@UXOG%(HF%11P^%=W?S^_*3NAH+[)^'EI4D!16MTO[!'LOY!K45M1
MCF"_77XO\LT*"/PW?Z+F]Y9Z3+C9=&(RL=S%K<VW2)1MIN @,M5Y8$5K=3^Q
M!RK"GF]#7GO$?#<()Q!![E?F9A68QW_E,[A;^L! #2;"'>3Z1EPW%G&=>UNQ
M;GWACYM)(;\WXK>YB-\P03Y_ZKOW;HQBO2ZE"X)'F/C>7OQY>7KW[8;W'BJ!
MP:_2<E/5YR6M*?(5HN2OG)7$ DOW*B[=U[%T+WY04<V1+J8E E;ANG(R=3HF
M<U99ZUG<7J>XX!6OU!IX-;W"5A=S5EO&:W UPH*R@JGR@^*4KE.-D&A]SF)^
M'W@J'@64^<'/D ZGW<K+I>G8Q@9$&<;YJ_\37F3!:W*\PO)F@=-2L2J%#1O,
M*QE><2S+_?U*F)_>WI[?W694E,N*UR L^&?%+RO*-  /P'H,@Y'O<-4-0GCZ
MX_T[5=8E5;,EU3#>SS(VPRS9+Z#*$TTTK=?;1_DUK:Y8<^/VK,?_$&U"J<?7
M<UZ+0V8J?BU2<*/DONN7><]4?\UEX\*23W6RY%,N5/"9MK(]YF,^]1W^Z_QE
MP*?Q&0U#7@+]#UYJF5OW.8J<J:)/B!043;*-CJ2;ZDS5Y\QP\\1G(<?R34?3
MH-":  4$(KJD&8K4L>2*D2BNP\4T=/9M%_X/%L5\B8]$$RFJ!=8J9\/%(A&J
M4=M.?U#7X_')YR#D&=&7G-LG=A^__&N\MZT V!KO7"&9FB')FKT>VLLXM0TN
M;Z!(57"9]WJR)=NR@=-*%5RNWQG.TL-WX;-L(PO?/=IC8(: D1)<$$5\FW?P
M4TP_Q#:9D,$<@'A!%"6I_5\J4YOLO0#HIV!T'S^,O-.4RILQD:O :50H?:43
M:[:ZFB3+>:9\CASNFEF<8<\EBU?AD-7JFI(N6Y)B66@"R^"HS3G*G8K>63.$
MJ#-NJ FM.2%H@^2I- KK=D=)G.?'00B.^7A7N-1\"LO3,V-.T'!#?Q(P2RQT
MP4[MJ /*9.\9!O,U&TLA.]F!N%!,>I6.AIYG$U:J,F>EV=$D7:]D'E.G29NG
M+/\3A-_;KM\>\D*7:.?5A0_GPK].!E,(9*75-0Q=LM5*HHK=U9;5.:D*==$-
MJ6-58GFJ]QQG021FF9[H(1('@JM\!&)7RRL567FM8'K%9T[>OWBB<97GU*5^
M,,/\$OB/=RP<G&6L$WUR'T,Z*"9%&N]A#=,F79*--54R!Y'B;-T7.,NP 27
MR=-48!' 4QGVFDYT#3CK]*R*/"]Y%<34 \,QGD7LNG.%&7LAS W W.1X2[*)
M,>A:+#2!A1U)U<$*RK,=2QKE3#'=L0_ICCQZ0%AYQR06BH:-](G0*&+QKIDQ
M%@V//Z6CN*-/IV(,*V0>5:O5[:B:),YQ>L.V;&,^VJVNW3$DQ:B$CU6O^^;&
M(:WN=<B&U'4(>QHR/THWCP2BM+N7\.:5UNQ;G+E!8)'R[CQAW:GOB)+XU06K
MPZL+.C#Q5-9=&L 9PV;Q34E(:C)?6%0U1=+E-2MV=GNRD&\R=L31CI?Z5H9=
M:75-2](,6[+-M^UDU^>AVNH:7'=,R33,YCO878O'FT_A]F<,<T.D8 B4/$MD
MZ(F#'B%"XK6L0UY")Q&?Q?OJ43>*C1*F77.6@4,]SQA6,(.@:6 /)-V6UR\/
MPZ!HTZ!H0PAU'@UILBFIEM' :&C#6*?8M$@]--:1''$;<8+1O<<*E5BO^)1:
M0JA"0F*TNA;O;=R1]$Y)4B*&O;ZJ[S!D&T=LA2 SP32;DJ&K4J<LVUP(LFHB
MA!T+DYI/X286>/;)7RY./UY\2<ZF/[W\1&[OKL[^W]^OOGPZO[G]G9S_][>+
MNW_N"F>:3^'V@_!6-RNU!2/QS MMU^/=C+G=0OGU=3* 5:;!%N_T+UL&+Q5N
M0B9A8S:64'.]!AMM'GI:AB*IN[#\.$<+PA%[2<QC">].&KEYI5JWU*-AUJSK
M)WW<V>J*5$ZS\:RBI)U6US9@@K]NW+]O.=.U.:G+?(G7EI1JRE6J+US\!^VE
M+:1V60>R4:R"'"_?[8"K4K'0:$-.\@4$19$4?<O+\]7YC//;J^O-@N*F:,KY
M8.@%SXQ]9#Y[<%=:*-+Y]FS+E$Q[QS1FHJ$5/Y&R[3ZU^Z[C,+@D^=U^@&&T
M13,O6U74D[3]SB[8;[%<OJ,B*6C/!/(FJ9W_XM)[UUMU3[O.BX4ES>A(FH(A
M3<F\Y7EBPY(,8\W"BN:8]WDS/ICFAH'G351@Q?0)9@C\S,P^\YP=U:_4Y*>C
MN^-#6@5WL]4U-5 JW(9> C,MD;FWUVTGM.V<2+:)@W@O-F1'M2(;RO^ <I^-
M(F +"S/+^+P*I#8_"T"2%1N<#FX!+)6U'9A52[*N2;JZITYG3L5+>GQ9XGY>
M33CVK4!B QT6YG?UY+3!3_.U+$G6L-IW*X4MZ^*F\,;9LF3*:\8B3:YFR2IW
M=]^SKC>_,%0 UY0,19>L:KHE[)P?79.1FM@QJYJVU#&VO/965B>=W5K>:CZ%
MM5FUO;)FA;1/1S.V(0>-?;)?<_5CMPQ&\RFL(_DQ&+AQ<ARJZ*D-^@%W,;_'
MRPC>W3)&^!FJQ'C?D)4,Y>69)2UD;'U(:NE#VGX.8-<TK?D4EKW3C&L^.,2(
MGTHNP2PR)#]XYW+RRZ&FM94CC0P9O*E/PZI7A1'#RM;[B]L@K?BE$ R>CN)^
M$+K_80ZI+I7-Q?.62^<M%\+HY9VY 9>0U&@JYC*KS 9O3)T%$:',^T47ZQF=
MJ&)T0BZB:%0GWY/W%1V572//5Z.LPXMW%;4CV59>+4\^NPD5+=-?':PT<YC2
M(;D:Q5$,GX/^U0?-Q$L+<L'D66+)YHVHC-F)G!A8;?"M03W/E4J6IL$D*H?Z
ME2"3"%P[9#U^G+GW3!(K_<[U>][(@8?4AN'?F>=<^%DUPUTXBN+;=.#%>,(;
M3'9@:IG3B*=>/#<>":_!4A1)MV<SX>2;SVCH@]T3Y6K)S=,0OL^BY\D8>L?R
M,A,\+7R,C"GJ@_B"HMJIY,B+G<O-K,5%HV(NEAZ^TZ&;=%(D[(EW8.5&;QS%
M[ZC\G\(X^0.I=TU=,";I("< +80E!'ZJ(2F6*FDRELR5R%B^CXSW?),E7=WY
MYM\+]DB-!J.DVW':LRP8#$/69WX$GH8\4G>'MQ1D0Q-%E&>3 TOJ,[X$473)
MXJN'._I42";$$216-:<M[9Z>5<#@#F>PL>T-"*66 MVP&)2([T.$H Z^Q3Z
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
M"\0"L4 L$ O$ K% +!"+ZK#8BQK&V2%.;8XFKM\+!B\G=*#T-47Z$ O$ K%
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
M&M)[MW="+D')$F9<!IP#VN1-1]E=_)L)GHYY,X]7]Q"C?V_?,]!O>/I0L+H
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
M0+UPHZ$[2"\2SA7<[/AMKL<O<5S>*?L'(Z]> 2IXST2_VYX8/#P3OCYX&,%
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
MS4 F2V>X! :&I?#J%^BW_H(66RXGD7KS/<,X:QV=M.L5IUF 1+5 Y^OF >Q
M&RNGFDZEG5?X'3BM,5K$<$+\I[3K<[:;V*[V?:Z]]7VFOL^5M[[/V^S[O#(,
MD^YV3^=_+N12%4M<BAL+KJ_/].I;.!>^2=V,H+5@JUO9-\D$=8I? LQI&=RF
MI5NFS$5X6@FW"<[( G ,?)*>#:^A?[X.3!J;?54;&R>#FX)VP?YL$2AVTP%E
MUC("%6C9'S+8+/NS/S-06M;R?H0YM2<0(3:V.\](EUW#(K>#>[*5B7Z'R*$\
MU>^7H]=B09 <365[HOJW1R>?TMOK65 >4][]G+XVD]V2%G$VK=X&=Y4&W4KW
MR3;M7#1X@>U=ZZW"ON\+^9K6!B^P% VG 7OL,?G6"A;=+)?1M5S)0^6NEZB+
MBXA4 ,R"39AD@DU!)[QHH/'9R G-<F5[R GS2;%>\/V7I<*:3U]U<R#[F[F5
M9<+GAL_D[/+-U=EAY>RGY]RAS7(-3F79J6^X8'XO#N3*%%CS0:S3-?C,Q(SU
MWWV+YV%OHHA[<A8[6\C]HGRH-;)L)>]SA4-C;ZJY5V>/C5=T[R9CK%EF-5?I
M\[)Z1>WF3/XIN8]9ZW^=J8\+<?3.I#]6=X*YGR?E6D<GE4;C^3K0BV4SK85%
MMI'1M!O<L6911QT@6R^5-ZNDG9GHE W43R;FK35$.CU&__R8*)!WZ"44E#P-
M^F>TF%L1]#P1IZ'-HIAHK5E92\CR4Y@(NU&RC8E05DAF*IL)-&ZAA=@@"H?<
MY"@)Z7\=F]SK&(.%3ZCVH?MD^2*A#\.!W0.5W4ML]S82#!W&+9L&7N#"5K@^
M_!#&2<:<@#2*/ SN^D]VA %GBMR&%+R]';OD-J-\I<$8@66P[Q+) ,Q-0'$!
M5[7KL=C @Q27++WKB>U[;A>[5<'VX\.A 68AIVW/G+9.FJ-*T,5%U42.S\![
M%/WCOT043K+NSSSZY>",QC9+22@1;('4G&:YLXRO=ZM3JP"[XKL+9%TNBVI2
M"Z(3],]Q(.Q:674N [:T)%LZF"7H<H.PGT*0S &23/-!&#G8@"OF<!]2SQW#
M*F+,5;KWQ /\@WITD8CW;AFF2&7W3;XTXD0(? N\P@[$;9AX]!/*@\NPY,"^
MS<^&Q0'^UNWU</.0 [%A6SR&%:>\:\.5XB.7PT@]6"><"6YV-AKYH)!B3L'D
MW(@H<&G%%DS>-=8/YQQ/5#SV$TR6B,<QWH'(''2@!9QXK\NMW' F+MY\.'T\
M\@'(CH)ET"I<.):>#[\:^<)%&QV^O?>8[6!(*QVR#U=K1"^8/J)LPV8,!N]P
M\-?Z9,/U#-3"QFP@/Q),\?1BVD"];TC4'K[![KM#N*%CA^CB#4=A#"3!?I5V
M#.1A(C/) M='L5"R3Y&-Y*11".BU2GXQ$BR!&+X/R^*Y"/P=ZA+X,Q@I]JAI
MW3@!R@D:QK&\@"@>]8DYB):G-V=VO5&V,5NS6OXQ<T<X]&'EQ_R@\!:X^61Z
M*,M3?+>< .6L I-@SSKDG:X@9NMBZ;IJ68<='MW</&']?93Z4MX!ZPW=/O$?
MC0@BPZ'L5CQPW/(.#2/@2YV9VAM'$=+-"UBNP!YOLZ/=AL;X3=!FC-P(N!51
M ."&"L>QC9<)2PMX#=\<0&BKY[O>$/?/HWSGW)6IDJR!$X")HR=@LW$4$^=T
MQ_ 3$?-!B'C8($0.I7NJ8$ \<SP>J(@@/QXP2=GWQ+VPB%<H;=G%QV&]<-NZ
M?3@:,)@8#% 6TD48Z7$=XUX&Y@>FA[$<>2)BSA06$L>-AL:VDP,_?(@/@,RF
MGH.9S"23Q+Q\WLQ=?]Q8RBHY@Z'AW$4?QT$_M32;,^Y0C'^5\D!W]A!H33E\
M(-''Q"QFXELLD)CVGZ!")9SN/O!P,&ILB==IC6^%$>;9T]=NCV4SRD=0MCW,
M^<<6FR,2R^/1;0220?89%2R!71[!]P8@%6B?X%N+KM" 7+@W"3 AT,B]?V)!
M+V>*=S.>+97!C@_H]'6^E&E4O'&'HRB\YY::<(G1G8 _N1E',&4B7]=-,"?I
M(NC#]\3R&  K63C@0QA]I5:<0EX9_3'W^PP*4^=A+.!V;((:V#>@?2;AK6O?
MC'!;@;,^_>ZHUIYR%GAV?+R$\=:!>].->!BXNP6)0E-GD;@B2D13_UDIR6ME
MN+N>@ $'2"TBX+@[]&*ZL&F3L(\JD!QV)@Q0GMR'7@_'[(X3OB*",-%O'4@0
MDR"F5$F2T7V\C<0C_"A6VXY9VT [V([TS2.VA$'P@"TCKV<U_SNJS,#[C#H*
MHW[1$]Z(Q43N%;&MRR9<OF1Q[U%K8OF(!2)AK'G C6,Q.:":.K9[]8"E2$BA
M (+KRW=),J-9'P_HT1 %KOMHAUU?JW19D0RO-BLGK!ESYHF8@V5>-1!@AY,I
M4SBL%V= 9( N\%YWA"9,GT^LLF;@2@6CY0OUCTV?<8Q6L[DEQ7$(XAJ_(HT"
M5R4),84.>*=HNDG.[\H^0O&=$(E4AGO^N,]\TA<#01N/@RO*G!*=LVHZ,GU2
M]+AZ'1 ^_ZT]M]WT+'MJCHC]((?[[#Z>TE1^3LW 3V(QPZ5Z=-)NMYUR+5^+
MG]M_O>&@^WK#+E[L$^Q/!53(.MM;\_04B\FEUHY.ZDZUVG9:U?QB2R!5F2N0
M:Y5T!%T0F"=A89C>$7D;;GYUT IKOI*SP=:K"<(RJ(DLOO8Z@BXT:@VGVLDG
M+I!$?1)H_TFR]BT4K(4WI;X?X8*3$ES==:14.'0I4"MVD >S]V26P;[Y/6D<
MG72:#:?6*6!]5!F49IK?'2U!BGC%RO'*A'%O,IHTDU%)>"K&AV!U37?\%F"2
M;(S13N5L9#OW,[9X8'<_A8$T?Q;:V29P6Z,PD\F>RU<6F\^^T->)WO4I'+<=
MAEO7WK1@;UIP%IL%F^/-X8PL(^V_57(1\))P.5D'!)PYUM>H+/?.B_K'9*):
M;G\(^A%HORZZ?J1&=?'^_#?[YQ"U_DJKT[&OI ,(;0\J@*5;.@$2X:? )7B=
M]2/W ?42F#M\X3^EFA.>8U("(CS&45H-JSIB6]>@\T9T^>%I1KWH1@ 3($^?
M@N4I71[GUQ<WI]+3D5W>A,=..WUP>FINL!CEUI4VA=9LC,<MX_%4=UK$R\B7
M]7(VX&)'!GON?$ZG^)N>X:6>X$)'I7UTTFA6G':C2#>96XSZC+.^KHEWP)*%
M,UYIY._:; VI UII^! HXXBL@XES;RG]=8HAEU%O67=-)HQ]<L@$%'>0P!7L
M_?/ I,(_!+-UI,(15$NN/Y3>5 M/A4-'R6 Y> ]'.- 1"&<^SGQK\&G)_D@6
MI/E;U^^-?:GKZQ)T95.2+=0GC1YVQD<W)/Z6C&[00F%K/%AR/STC:'OEM/;#
M$)(?0+^F8OZ\H%S<F5.I;=.;@[CZM0)OCI7WYCS//[.BF\5:WLW"#GRJ"LM;
MO1ZYA'IX647A^/8.N5M@P$+[H9I33 QK;29&I_*2^G05_7>MIE.KYIO+%>G0
M4S7! E]<3O.SB.<WKDNOLJ-K4ABKV!2J475:Y3P:\7QMVIZJ35M3M.D4UF!C
MN1%K!#6HOX$:$*A!]0W48 ] #:[%O0C&XB,8&@HZ#'5,=;D6INY@NX)-K8WR
M>>!>DO/:?UTID\Y#V HQQ:&;Y:8RRN1:R=JS%!5DXHXB1*S#TZ$1!9?NY_ V
MH- AZAH1OTQB&JD4!64W(A)#PDDY:.7%,48DR,",0HP04)@Q%M$]!C@L^'#H
ML7/)R*>@>?74O/!*TX%[#T[X2%FTV6G2'3>*T'=+%PO^CF.H\"B;D6KN<8D)
M(_?%\F*UR+_0[WLGY&Q"7RE7>J)%RT#5"*87Q,H3'F9G[P8*^HEB^9$8^!PI
MHB )6!I]&8.UT$SG*:/&CQLY&5>B#WV9KT(A'\+,X,C=71@7;_0!F 0W\">%
M(F$;_QCW;TE9\@Q_!04VF"%06:(0&(6/I)*#B1QF,D\:=,ER0\Q.$0RC3WF>
M##1^-[IK*#F%$@'&L8K0AN-D-$[LH0":]"VFJ2)UK-G5]6+7YS/% 7FW=X>A
M?C8#=>@!%^DB-@R2%%D[AI7Z8$R3FT;G:J3 C& 82VT2]P/S7)Y&G-IAX3<C
MG.4H]((DNW([?PX<'-*5F3**J>W$_8IH+;DC@GR783M^_>?<AE#R2E_ I!0*
MG3P^.DL'WBLM<SVJLNK--]D&FAU%@[4E7:(,37P/GDZU?O.<6KD!$@Z<9K;(
M4>.:<5+7EJ-RIC-.5<;C)G8*'_;%+?H%\-BJ-5&<+/NH=2?'B0U&C[SX*R<U
M18(RJBAEXR' W&-OE FNJIPW>XAA5TS"1+:-\],!DP%$J'0STD\/0#H0\ID2
M[R83LUP4,L:.6X2H0=8,U*#T1$T>M06LT14"$4K\+&0@U8Y..DZCT7):!:T*
M%G 4=E:("BPU40S"M9PRS+1=T.-WTC.X>%2C4]_2 AI@X3N->M.I%T10%]GI
MQI8FB@&HJE-I=YQ*07VHI0Y"#"/(U 1RX&03AS /=[FC- N *SU*Z5UFZ3MN
M@>.T KCB4GO7 B+7,7I7X,99@,2M+4VSC;Q8[30+F]RL<);:6YH_Q@C*;:=:
M*W#K++#-G>U,LX90(TZGUH2M+CCRBQZD [A4#:TG1 Q@5'RTP0>'^9A6*Q4_
M"Q04=!0_E>PKJ0K*3ZA"@S"$=511O18UZ9X/6@A'/EU*@!I'J+H<@](FC%<X
MTC0:"M#@Z"5J0 [TZ(*2V"(SBXI,PK!O**3H]5.)XK&VZ4KDZI:Y4Y[4==%A
M[O5)2LE!0(U$CZ[2XK47W+7[E+,.ZRVV%U(MV/)@U3WRV&/.,>,(F@8@*6@R
M(J2'P23 @/("^VC]T4;)Y&!",B87IS2"Y)1\/^RIJ@:M7LLS1>#)5F'@R+Y$
MHT?F")+I0 2Z%0&FP\$>U\K'34YF/ #V5HZ03"71 Z9ISPDJE5= /2[R@:D4
MMJ>%I%,%[OF*4ZZTG=H4W<^:-_\5//RKS[^*JFNY7INB4!7P93Z./X%*+&&P
M>V FQ\+T)65(ZYGE:/VQ,L8LMW]/)Q;Q-X7V%7!R:*#2:'MF10H(,\QSQ(B6
M&X'EU7TJT)?@-+%Y-H\:J]L,TYRK'"G"JB[RPU$&X4(TJLVD$:.HN[&YTY:Y
MTTS$"8IM#$A\4YL I@ML0*?LU&MY?3J5U(:&[ 6:#UR=ASU/2<XD15MC"2</
MK(HCH4J!#L"^)T.Y,O&;N1WE-"4DQ$F:"8Y/A5V*\:8E8^S4E Y'_@3E.YX)
MGSVT;F#/\?(7]"!Y"*-^+ (SET21 '-*,ML)AA2FT:+*,!EJ.X#+Q*"AD:;2
M^^J'!;W5+9TSO$Q@ME+.9C,TESHE'S'%7OR,*<L7P#4!14@YG=C,FYZ1WE##
M1AX%;7[28I58%8S!6HP4=Y4B;QR3) ,$;>C.\;O9I;@3FU!;.,?I/1/C2D08
MF71OQ>7@.@ULQ+_#V)=!6NU_7#4V8C2.1&8GT%XLY2_?;W%I2. ?7VX1GQ_"
M!1<!UF2M4<I;O&H5S1^MEUL%^A@67 <B?E9+>8-8K:/U0M18;/IUM#;KI?RQ
M^A8/"6@T6#3$=P0<*#PM<*]@ZI#O84TL.R?9PM)5@8ZRR7"ML4255TY\7;Z$
MOQ @!P(A(BHPXW>A58(5U'!EW<KZV@$5'<?H4T"#H^?"+84OBX4^YA2?XEC4
M[F53S+[7)$*&Z)\"R?\7)G"JZ[C!D W@GSVA 2@8H?XB,)^!F]>#/2U S:_,
MCHVO8RPC;EY'X+Z-QLU;&#?OL8"_ $,=A'DZ.2P(Y'+U_;_.>97FXK+DL6$[
M[-_!!CCMAR/"F=SW%4^D7-8<^^/IS7NXTYG*-U_HT^-RQ^'9R-0"3@6W0*<6
M,7_QW>=P!*>L52]__XX_N>#T0]XX$!,R?1Q^8Z<8+D9]/&BYP1V99-IW@9[,
MH,?Y7BB)*=4=I-!@[ >RYI&+]2PL0^NG;V7)":<NZ//X<"<8BU%^'I4BR<],
MH):D?I0(DPM0DPDP_TRFG7-UG2P4%#$5:5I&Q7RFQ,$H*<S-4N>W%KEUY-.P
MECZ7<5-]8CH(8IE$E-*FYP<R'52^88S9A2[%4\/(OH4KA<M0771:WI,/DYA=
M11-EERJ8S#AACYULM/5$05'5*8S6\1U,*?Y>>?4,*(LX<9,Q7!I/N%0+]PW1
M"-3,T3^=++SBW.[:WP5<9A@)S.-+B_&^QQ\9P"Y=+!V%*\#KXP;\,8Z\N,]P
M%K%C:9/(>#$:3<&TWU *[#);.6D0<*^U/+-,7<X\[D7O'%?^X^C*,^T& 4Y2
M^J:[ LX^)< C#KVEK<YS-P(&=_NRL1EZ1S!Y(DEDJ$>^)0400)*J0XP> $I?
M5TFN9 I+84'X)%@<>N]Z/G$#O@^_Q$.=K9JFZF:!=;MXM'#VJ8_47"G.$ 8N
MFLWNZ1NSLC<;;]F;E+U9>\O>W&;V9KXSU)H5W8TM!Q233W@SIXH)2HEBY:25
M54YN!*6)6=?4<!)%H%1.JFU03NQ)O80?(X$E?UFHGW#L12H.L3T>]97]0W 9
M()<\"6D!?V.Z'G\0Z;=;L7Q[J@&HBX_FXDB-@>J46!/JF]H"-O(<)YE$(?5&
MC0LAM1+RB/>I$!!TFJD#6H:U-T=E:A5<.J;_QKAO&.]":Y65AB,)R)/C*4F4
M!%D.9BWUJOK,6\S1C4.-M<1W2M4@945@9E42A1/!!$N_,',-M500T"R$D8@\
M)C74%9;"B.3NK"P21L9QQI>ARF%,KT,,3C)ZU]CKJ_*XF9?BWELDYL&O3SWX
M]>-RS;$R!@F#T^!.D/)5_3$5 ;CID;C#"C\@'#\N'SJ7SO4/J1*)/& ( ?N[
MFW$W81E2+1^#C:.E@D3KL&Y#SNEDBP)'S!]=UQZ-NZ J:Z FF>RK-<7,.0:-
M/\)G\,@*=/53@BJ7>(41H_8,X0+$_%?0N.B\:\/ XA%)SX4;F4PE ST&JV<X
M(LXX8Y&0'6:!$V6.H]FD-FWR6Z@7$N2=&VOH%^P-C$3_Z?^XP]&/IXP3@&\E
M=S@;<W#H0DI6I3,19TYK7M1(K332Y%3R8YZL:)I2QUK^]ZW9&C.5UN5DB_#(
M?S8R!0S*#+UYEK%YDJEQE?GII=A!$ND++QU%"W4%T2^3R<$H?2.B)L9@V(:1
M?J>FK^4M*JEFJ>LDGUZ);)KK'SH8O]"G,! [V/5W^8(D]-@K,(,;;"EZJ?*H
ML?ZST)]:6X<_E?];:C6\H'"-\D,OP.R>=_8Q/RH=KNU2"L! D[;UK&V<]IIH
M_]PY;CL++1[!3152'IHO&+&[KTKY0:WF1K%Z@[#(F%O8'YW?7%X=R?[OA"8:
MDSP$%AH'*,O5.Q!V,>1*@CDQHV?D'\_FP'\@:N1O,++H%Z8GY )'8'-5B@%G
ME#YPAZ]$<<]IB1);P)*+I6M=)FEDI?R0ZCOD59O")I"6P(Y0W,_4%Z8^^2_,
MEN\F.MV.4@O(E2;0K07*R#A(<],8/CT%TE* (_"BDGV*8*S&+^T%?TDJ R=1
M4$U&9D(EZX/YRO2%]$OYU@R>6A;;CGUTF%J!;.=&J"ZD\!,T$I70H%//R;[/
M9T,,L[,RV7DNJS::_YPT9UJF(9(FP&-G-E?Y*_$Q)&^6A+HPG%QO\+^T1#"P
M)B%K29_&>L%6I0WZK"H9)/3\8YZ+Z@I=4KKN*;T#%J_\N'*IP**]._K))$58
MH>$-_8)(BH'<=4O^U)L&7$>O5ZH#)6:E3:+IP-^%?E^6+X+J3)7TF(-Z&A<2
M((RL'B&YPV2.D_"X*X[5=UF7-,\X)C^XZB^@LV\RG*] <ET62"C4OL+D*<]2
M@S'25+1%JE;=%62LF-CEA.XH6>MXA!V=\5'[N_.KF^^E4UY6K?'N%LYO?FI]
MI;Q"7<)T(893,CLR2(MJD7RK.A;]USM.N2C;:GYV>*6\0K' 9A94P\2$=F$K
M4N6KMZB8XIC2P[1>7EA*@3M0E/JX&A.L4+FPF3W#_F8$V5>09[0($ZQ0RK"9
M!36.3FJ5BM-L%J#\*B; %,$5>&"3^M>$YE?.:7W/1P:XD8DIEX/9.V^X7XJU
M]/:FG,]%B_^LKC5UNZ0)RU:.4)Q.[L:J,/_=BY**7=L]X?NR<15Q;K;##R9!
MNZ-8O+/5O]+NN65L1KSXC.4;L<D-C(4S?_SQ:/,-TPL;#\YL/EY=O/DXE?O.
M[ST^N^?7O!GN\F)R#<SG+F8[7==UG^P,^Y].F S3NFQOK/MZ]1GMNU=JC#5;
ME*I>:'I?EFJ*5F_"7=:N.>U*OBA@P[W5=XM"C?K.DJ@%^A/HG)U67MW8@4[I
M9U-,KXGC^1(=U+=PZO3J/X?OQ;5<^G+D!56GT@11^,QFFO,V[R4V?AN':0T[
MWZ&=;U;R^?([VP-]YA7])9AR^)96/5Z^^?)+'^P;[K\EEN*H1ADXJ@.F;NV9
MHKJ 0(OO\J%0=QO2XWGDI3K=EE.N/K,;Z#/(N]D.[K*[,>.#2.OW3O@99^\\
M-I/O>)TMC6=S&W/7!?U[41ZK'ITT4(1TGGDK%9+G^4)DWZF[26'R'/+6CDZ:
MS>KSE8YGD?=%6J9CN^6T>]-X6=UD0XRW]3;8ZW18JZY!S'AS^UEG&*\.<H6
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
M)'VU%T83>++T=>LICN=26("<(+K"@)B>&U.E20GLZQIXP+U:3I7LBT39P.-
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
M\K1\*M:CO2@>LV1]GIQFG%.S37=R8@#$G/8X(09_>BUNQ[[T_7[W\?3Z>XY
M/8TD]HU>6+HHOMA'/I9 6)R?0TG'F6KLEU?Q9X7B.V^A> K%M]Y"\?M>^?N;
M-K__2@WRL<X6"L<)HBTPJ ^?9@5"BYJ?Z\4,)Q))5&L)%=!7:)4RT0WS\#!G
M#245.NUBY70U X-*\(RIPYB,3) &Z!@2A<I#V)W@!8=;\WF!N"N(1'2H"[PV
M<A19Q:<0<U^U*^%<7D*1BA/K.Y5/C7]]SSHD%I*Y6!N.MX?L8?*> 2HX\!!C
M/2)G]LO*=2R.21B$@S:7QL6XN7A@'L1$TEMRU );>@2]ZR*H.SEI]1UF]06L
MNN\8+X+?WM%'[-#PT<ZF>D.",NDI"'@54&9]/0U58Y:#>E57K8$G)V'<4@V!
M8&X9:/[@V5_[$"C6(VM",C@",BA,9@8^"6KZL0*D1#A/S512LAA14N0EQTX!
M.MG.>2)[XTZXTB4@C38NR%5%F5*+49Y,Q<B.9>!?*D 7RH-7:+A&8)Y<8&HH
M>A;4W(D5&,7-,68@2>E)20QN)/^EN$DQ$$%_6C*YH&_K: 0O)-44&<9-9XW
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
M<QI9-Q&K UEE0@NXV$?M.1L"#K(1ZPG;V)EI:$[HV:DSU*P9DI, :2D*S)A
M:+UJ06?H,C[=!??0RKE!INF $]>3;5Y/$SNQU%9:2V^E0T5,$D-7%:2\O%R=
M%5ROO 77*;C>>0NN[WMP_6?OS['71Z@B/+AG[LC# KAK0:W87D6-QG_%E,A)
M+AZY?(\3W76K6'2\]!%*/(RT":OW#<U8=(++BHU,"A_EV&/(RD GC;,Q W1J
MJVXV#"E%01*=&RT!K<$8MP:@:.>:XJ7MJ1"/Y9YKE8J:=S$N'%6*2@Q/LO"S
M9O=$P_$^:-]H3("HBD($BG^B"H38;"3@%ZTQ \'*?GN9)X_% ;X79,I+N(T2
MQX#OA#^B#8'_4*@0]8('K&V()NED!4+T8ZJCT(U>TK)COH.%0AX*GN0JJ!X9
MUZ!:*W#',<X\IM@(%VK#0#AYLP2,,&Y2A'7Z1_?)\@6&@F)S18AK)]T:"LJ?
M;OB_1!1.J8TPS&)%H(E]0O4:#!5"&X#)\SLVU&5F'XZIZHTP)7\^Y\GXIEXV
MNFVX0:ZM>:V9]@XJ<M"I8T'MM1*JU(VYNE4681$:E.K";2E3-4DM6\;R!?X$
MUI">&P4PC<\A?*ZJ0)*8%(8T6<(L5[O J9R3QSF=H\T-D6B>Y.N3W@F<K$)O
M=(.4(]UQ<A=&WE_L*=<J:$JC]R%V6D#83$K7I_(A@TY6&J+)QNG5BV4\-YV>
M[MX!!/^FU:XY]6897Z?61!;]01\ 3H_I"I#^=J99?3P>4C@?)02*<KP?++,/
MMC()3<ELRZM,]-^]^*;QRK#M^,BE)@U_/RH?:;60U6,J?AS%H!FJ?_T(5V(_
MN</IE;_]T5Y\JO*-\<C%)K,XY<<?CU#?^UL2J5'OL4<?;)9: RN<1U(K3/KJ
M.3!%$T&O@ID%X4/DCN8L/NG#@OOFG_J=L#+,D_O[4?-HX?<3%.;1R2>4!+^P
M)#C/2H*B(>$_T997K'XO2:Q5^(JI@1?N1G7)W9AB4E52DPHES[+SVKTEU)=>
MPJ)4_Y&J9$#A @4)3UX8P;QNN]]5RW6G6L/:L\;W!9S!Q[&%IW&J,Y$DE,8_
MQ![Q!8KKY,+40?^V>)LGG\H.[XL!;,,WT]Y9_;;P0&&J0:7CM%J5W ^+*#AS
M[&(N>H%%M9Q:H^PTF]7UKFEQMLHSS6Q&02 0=E>A95+,)+-V;U%:%.S5=\
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
M^R'[RO0$1ZH+H/TX] .P]^Z29/3NAQ\>'AY*C]W(+X71[0]5(/4/6,J) $S
M7?B%]T[NB/HA+Q>VAK54VY:/"6*G$_I(?RB1XSS$^,*%B<S L>B5;L/['\XN
M_I7EM,D?ZZ%^F!C+&)]1$B;&AZ5$"1*)>JT<EUO'Y8IZ2?J=+5]OK*6O?M0X
M+M>.:Y5T9/[&G(T>&4F<V;/96UC9BRUD?DCD7L#_M_7+Y3?KV(OJ'NZ%R1?K
MW(O:ONU%74F\]>]%?2_V(B-F@#,JNR1F&ONWA?7G;&%]<UO8W+\MK#WGLMO@
M%K9>8@O3K1&WJ"$:BY=?]6$BCU@4YB6_B&&7$$?A283Q,RPR!3?)$ 6H]H<!
M11$>O?CHI, ]SN_BB>6&,&;WP\3T5A;$E>J&+J7VX=/O5'<GO7*]_D4@.VC/
MH>6^$;+S"@B9>GBHLA"?B\0=ONU>< !F[@'=-[)6I$%VT(2]%@C"+/KG+N&!
MQX<G9BN55T#&SQ@+'4=/=%7RK3F/DGM'Q^H!TQ&]H%\" 8<0CN+-Y16Y.^<>
MQKTC8>U%2+BKNU$_8(;>A?MEIWT(E<8KH/YNJ8V[S0_-5\ /+V3/[S;A6Z^
M\"_M"-AM#FB_ @YX40MEM\G?>07D?WE/[@;#B]77X"EZ:1&^)5*^!F_1;JGE
M6R+L(;N/=L':WA(97\:%](ITI2W1\9"=7SODS=TD"5^#!^OE]=8-IH)57X//
M:8?TUDV2\E5XD795;]TD85^#<VA']-9-DO$U.'EV16_=(!UKA^SJV2&]=9,D
M? TNGIV)N^]:B5#M-?B!=DM1VFU^> T.I5V(N^\<X0_9 [4KQN]N<\!K<&#M
M3MQ]Y\C_&KQ?+^^_K&TN@[;V*IQ>N^._W"0I7X.;:[?4\BT1]C4XOG;$?[E!
M,M8/V>^U$[K2ENAXR,ZO'?)?;I*$+^/!VM7=> W^FUWRYNX4C$C]53AQ=DIM
MW&U^> TNG1WQYNX6X5^#,^>E70&[S0&OP1FT4][<W2+_:W @O;PWM[ZY?.+Z
M:_ 4O;0(WPXI&Z_!6[1;:OF6"'O([J-=L+:W1,;7D 2U*][<3=+QD)U?.^3-
MW20)7\:#M:N[\>:_V4Z@<&/9U8V7<,10H\G_^]LOOS;_W__]3V\T?OP]:'3Z
M?[7N;W]_"KY\&#_\U(HZK7]5__CR^2GV6_>]O\K^/Y,?DAOQS[]:M:^/E=[/
M2?E_/GZLWOSKA_O']V>_E^_[-]'O0?+#Q][XZ\]A\--]]'/CX9?3_PX'#^Z?
M8?W/7SY=CO]]]C_U0>.7^-?+X>7EZ=WYQ5>O_=O5'^T+T8O_Y_STXA^=VOG'
MC^,OE=\_=?_9Z?Y9.VV/GGJ]Z+_K_?_I5NO_"7J7@[N'IV#4_?G&O_WA_!^_
M_O=#\/7]V1^__]7I_/08_OKTN3\<-D3\^V7SOO[;_W@/7_K_^;/[CV'M<\>_
M^//]1=.[&_U2^2OI#J]&7R[?CYO7__S]W]=W#[_^7O'$/RJWK?_XO:'_Z>S+
MQ<=_70WN?GKZSZ]79Y7/__Y9_/#QT^A+<%W[3^V?O7_WRO^H_G33OVZYG?I-
MV/]7_S]79ZWW3[_]]#$9AS]U+OYX[-_^_>__SSZ[N3X^SMOWK\UNVN3A>0T^
MK)VUFS9)V-?@G=H1NVF39'P-+JI=L9LV2,?F(?NG=LANVB0)7\83M:N[\1H<
M.CN3!;-KG6":A^P&VDVU<;?YX35D1>U"%LS.$?XUN,]>VA6PVQSP&O*@=B<+
M9N?(O]<.I(]>X 8]#WLGQTE$'8@G9+Z(<. >;%=\.?@@1F&LWK=M9]$&@?6:
M>^TLFDO$7\8!O&'D^N_#H#]/B=\[VNVUAV@N[;[<*-G[WO/]&]$;1W 7S_4N
M[!L56WOM']HG,;I!G*?67N<J[8$8W23M]MJ?M5=B=)-4W&N_U.F#&_4_/XU$
MZE;_% ;_'KL^CM8GX^-RA);H%IWK\2YW,FGMM=]I]^F]:S47K;UV-^T%O7<*
M,:FUU\ZEW:?WKGF36GOM32J@]T70P\'NA4'L@W,?M?;:?;23IW1+A-M+WU$<
M)>\^>XDO+@<70=^[]_I JPSQSH<C/WP2XH,7B5X21HL1;AFFN?+=X),[-'CF
M\T/X^2X<QV[0OQ'WL"HA GSJQ6JE=^HB;^^E?PLY[=H-;B69\<]?W$=O.!ZN
MC:'>F'D/F7DO_7POS\SI9XJGY^=1O''SQKEYKSV?$]J;^E@QV.)J]QN?;9K/
M#LDW^[KY;#O62?N0G+LK,LPK$ ^'Y-K=!6IOZ9 >FH?V6L1)Y/42Z?E90*YN
M0J0O/.PK$ R'Y!-.\TY?V!T\0>6UBH1#<@>_+,%6/Y@3/UKKP=Q+[_&!TGF#
M KBSE[[;G:3S=G2RSE[Z)Q5E+H)[4,'P!1-!.??^*4Z_/#RJ[:4?#EV^NHCF
MIB<"%U9OEH5[2?Q!^-Z]B$1_W:Z1T_X?8^:&^&,8?1(/I[U>.(8%!K=741C
M/WLT+Z-._?3FK%ENOHS)O6O9<YV]],B]<=P>JQ)[Z=)[X[BE.&ZG,D8[>^E6
M?..XQ3ENUW(8.WOI$9W#<;]X/NC=82#BT]Z=)^[G<MU2@^\IY^V</K>7GM(W
MSCL O6XO7;YOG'< ^MU>.J'?.&__];Q*&?WB>\5V^T/Y[;A<*^7*&PGWN^*[
M4JYNG80O(\?,'5RO'*N]'8(5728?O<!+Q,\>W-07 ?#VK=?UQ6D<BR1^__2+
M^T<8G?EN/ $J=AGU1709P4S[XQX&(M^[O:]^>'MP0K:^K_R53=]["$04WWDC
MS,U"F.,/7MSSPW@<"2 R?IARV?0?OEQ2ERD_=D#H--Z8XJ698M?\5Y5R\XTI
M7IHI=LW KY1;;TRQ TRQ4_[&2KG]QA0OS10OYY 9@[:=Y8B86D[D7(%#PCP3
M)W*&])!ZI_HN'05?.WV(<=P_.BE^O1>']6JE]>[+S8?<VVUS'7-'N$*JZJ6D
M(U'AK)B@!K[ATW@H(C<))ZR6A>>6X8V)%^8&^R""<.@%\MLI \[<Z\(A)UYK
M\H)>]Z)[.()AYK !/E*X%=D1?O >W\$2PG'4$S'_>2?</IE@\"C,[$3]MQOV
MGT[@L[MDZ)_\?U!+ P04    " !1@*Q:'R.E2GP-  #C=P  $    &5S<"TR
M,#(U,#,S,2YX<V3M7>M7V[@2_[Y_A6Z^W.[I3?/B43BE>T(@-"T02@(MW;.G
MQ[&51,61@B0GI'_]E60[\5,V@67=)9\:[-%H9GZCF='+???'_<0&,T@9(OB@
M5'M3+0&(36(A/#HH7?7*S5ZKTRG]\1Z W][]IUP&)Q!#:G!H@<$"M,ADVC,1
MZ%,#LR&A$_"*3WX'93#F?+I?J<SG\S>FH&$FHI 1AYJ0R0>@7!8,?98M"B7#
M?7!&,#@S%J!6![6W^]N[^_5=<-5O@7JUONTV^>W=/=MGYAA.# !M.(&8MT6W
M1W!H.#8_*-TYAHV&"%HE(/3"@I;R,E],(3LH>3(-#39X0^BHLGQ5D?Q+@!MT
M!/FY,8%L:IAPV4#\"1=2:D57;31J/G,;X=LEF=3U?D!MQ;M>K38J\O7 8- G
MOX_1SQN*NK:WMU=1;WU2AZ5)[;_QA/8XLR2V0HA:Y>O9:4_9:TDK9+3XDCXH
M\G;%?>F3"LUS6,'B--D(XD5%RBI;;)6KM?*JC:1!&M,AS+B!35B2;O(; !)V
M V/"#2[\U'OH/9Y.$1Z2]]XC\5 :<M\W_B4< F7:?2G*08FAR=26D*AG8PJ'
M!R6A6]G7ZKMM#-X((7T*@YJ4V% /6V5*R112C@0N =05@UCKL*;R=47T">W3
ME<2EBAH>3Z31E,)GUTCTR<3@5'!%%7L:K2PX?':M1)\(HR2=G@PLT["?72W1
MI^G825B%=)*T?:$%D#^N+CL)L4&Q:Q',B(TL&=0/#5N.X]X80A%6D*6T_4Z_
MI]*$;.GWO++[^[V][4:U)E),3SB72@#BM\<!*!;L727:*(&EPZ#5Q>_5[ZBS
M>@P\$FW3L$=$&^J[C9@]TM@W?25D^_< /"THWR\,*G0?0XZ$/"P/1M$FN2"K
M:R$#K\(\?T_ < /@$HV.J- F<&G.--"B9#$;1D%J1$!:_F: #%6U1^$88H9F
M$+C,P:LK;#@6$KUM,(MAMK(?&;;&!AY!AG"/$_-V3&Q+%-W'=P[BBZ4)^\9
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
M4@@]DF5*]ZQS@GWLCA 5TWU"63$421=,J\UG_W]:#-ZT+HI&.N'2)B"74-8
MIG]WO##A.5VNU)GPG/3'Q)'3Z)Z<@15&%8U@Z;X6;<1A@36*")=Y"FEY?[,0
MVJ2*I3U*BC@[@K;(M+0@.291I-3#C)JKF,4YWIA'2+],4Y<?W?M":E#]'U!+
M P04    " !1@*Q:[!+5L3@,   UA0  %    &5S<"TR,#(U,#,S,5]C86PN
M>&UL[5W;<N*X%GV?K_#AO)Q3730AY$8JZ2E"2$*:!)I+;E-37<(6X(XM$<GF
MDJ\?R>#$!MO81L;0-4]-$UMK:RU=]I:VQ-F?$UV31I!0%:/S3/[K7D:"2,:*
MBOKGF4XK6VJ5J]7,G]\DZ8^S_V2STC5$D  #*E)W*I6Q/FS)JM0F -$>)KKT
M/T/_OY25!H8Q/,WEQN/Q5YD]0V650(I-(D/*OY"R65:@76290%[@J72'D70'
MIE)^7\J?G!X>G^X?2YUV6=K?VS^<O?+'F::BURZ@4&)V(WJ><2!-ND3[BDD_
MM[^W5\C9#V9F3YY.^!>NY\<%Z^E\L5C,67_]>)2J7@^R8O.YI[M:2QY '615
M1 V 9 Y U5-J?5G#,C L)E?:)?D^P?^7M1_+\J^R^?UL(?]U0I7,C#=).B-8
M@TW8DRS+3XWI$)YGJ*H/-6Z0]=V P-YY!M)AEA.X5YB5\%_VQ4_RLXP1Q9JJ
M<.8O@,8KTAI :&0D7G"G6?VH GL>3KEJ.?Z7G.^+N6^B[:JRAJC#EL$^ZQ!%
M,VWQW=PWX;25 1U<:7@<R:Z/E[A!(BSBK5$Q-8A[E5:]T1H UM/:H,O?7F&6
M_YL?MLE DTW-:M(U9LG<'OYVY.;AJA^<&! IT&K.?_ 6?:9AV?6$QGL2)O9K
M&NA"[3QCTFP?@.'/*AHQ43&9WG^6/&.)6T6965:7Z@':M?K5_+T<YR\'-8/:
MWUB,6FQZ%FT3$=_ )AC?,2Z("C2:E*4NC%DW=&M7(F[; 9%M6]A'EYS+P]'\
MB1PU==TJ+:NR/F6_WR-8#];%P"MIP42!A,T^&6D,U?[ X!]S]D@7G_M'3%ZK
MJ$$PFW82(]\-XF@P6\W_ C5S ?:7!5A/@2M,:ACUVY#H;& P") -6B<,MD^
MGI@D*U!SWW9"HE7<S34K+&H61[ 2I="@99,0:YX5*HN[[#5:%9\Z2\B:02MO
MICH"&BN0EHPR(&3*_-4'H)E0L/'A,%/N]9[J.=M42.9\AN%8#6H$5(W[$JP5
MMQA<"\HF40T5TDO8-3[_EU"3BXB^[?I%9M-G/(^EI"QCD[66)I0A:SG,"#9P
M)21;$)1KX-A.E0*9"AZNM[)"[JEJ7H&#-=H4CU@N80\R1*4-)@&SCF>PX_NJ
MTU?<*B:#*SQG]%",V]L@< A4I3(90D0A&^[KQ@"2)&?V,(A;*TTDVN9*'8E1
M:E9X(FY6NN&?NV*NL=&33X^ +V;3QT-(C&E# \A@$G(G9\B7?<0O#P1";<D<
MY=W,@R@2'/_55-!5M00=/ ^ -<RU)^X&F/)9.UGG9@$D9=?37RDOSV:1()$!
M@RP3$RK,NP4DN;C &V17-/ D2*RKSR$>P&P3(U$-%D%V28,E@GQ\^S4TJ.A#
M#4\AO( (]M3$EF:"P=+VW2*)XLN83]P2<ZZPO$,;JPDUOL^1^'07$C1U]R.<
M8&$I] N/UNA6; )CE=%8*);P%.,%E*IK'JDO>=+D'P/%6\V=KVD_JL:@;%(#
MZY#81DZ3T284Y ZH%(ZZN5['@O2R&D.B'K(70KHK9.'D\&1FSO[)$OMKQE/)
M!5);T_*]. Z8']9=1.!K=&UL *UE8/EU@#56*N7AL3&]@#U,IA6*ARQB;A,(
MJ$FFUF,A5BNCEQG?*REC7<?(*B617;#%XE-I*FL)Y1X_%]GR:TJQ7 U%47D-
M@-8 JE)%93!4F=$.4-$NQVK =(9188*%H53P$A;SA$S=M'Q3RU_EJ8X$#B"B
MZ@C.DLMJF-)[:-1[; (0[T5&0D\I>A8G<%2V_7;38FG=A 90$0LA 4$JZE.'
M-9<LEI15T9Y.", =[[%A*/4/S&.IN&RR8-4\ %*/N/TK;6\_QI!33#H>!^\@
MR!H :P8,9Y9@6L8TS%:OSXL[P+=?E9?GI^P:0Y9+L21</@^ +2<_B)KEZ6(=
M\AW!".L\B8\[*^&V9^T\D Z?>$YT^B_W"E5#MS+<D,+72M@$!)$L/G@.0MI!
M30*)6^E>[THMO9[RW[\YRRT<@?@FX%S$TKD6)UG.HQ$Q>\ U8;YR@^"><,?5
M67+,#:XF'$%D"N^+'\6FWB@]V'=[QG;]!2?!<#>CWIL7+WRD<Y:][10O,.'G
M><7:_AORTX]L7/P,2D7O]7D@I+L*'E!G)^LN401FAK2@QK[NSPZ>:FR<+RFZ
MBE1J<*-&<)ZX)SK6"P>:>D\(J4U8#OV#E%C2W6.$W08FHY8_3LYQSOBOQ[N'
MH[__>I*'YN09'1:5]^-1_WF*.I?F^/J8%(^_[__JM*=4.Q[)[WO:K9$S6O#V
M_;CP.LG+-6/OY>IJO_4]-YI<E)_W1DJ+/",C=R6;KS6,KD>D=CB^*WW!O3%X
MPP=O=_=U\T?YY:!W>$<?ZGJ]7AI4JJ_JR6/CUTD5RO2E4JK>% N5JRNSDW^^
M[]X6NV^%TLEP*LODRX'RTMT_>$)RO3<83]&P6VMI_5SEYN'+&+U>E'\]OQ>+
MUQ/\,&TKNGX(Z7/]:'3P^**..\K36_=&+[2+6O7MHGJD#H9W^7>CJS>&G?J%
M>=2\??[1'(P?GO,JO,GWCY\T6=?NRYWJU?=&;W ]?7IHE//M'S68N[H?=E"S
M\%2XE7_(>S?[URVE>0R*!RU<?T/R]VKI C9?'FNC0?<6O12,\?GYWU*YU9P?
M[(Y]:HQ:_N=,PRHR( N?DSC@Z0F3[BB[LJ\L9N9[4R78J;!68Y=-2R*_Q0,E
M]>$UDBB^7/G'3K$&56@DYGRXRU[K!*A=RA4C=!9+FHR2^7S%@B%K 7*^MF_M
MH%<F;#9B5*D(D&F524(9ES)/=<#6Y)78<)"<I:GNJ'NV$_<@DJ!&@L>A#QOF
M_6^>Y9=(6UA&27\<"J>E!S]BEYT]]N42V@$-0DIY;2T$"4YI%K03&!GY;95V
M$(% 4]^A<H,U?I//-5 11Z^CS[.B):)2]J=+]E_4;T"B8B4A*1,S,_5N&;$E
M)*>7_R& 1!8P/V^^\5VYC.G9\)(;!(]45L[%M$/Y8NE'C%N26;":1!9<!.#8
M0V=*;EM*LU5$'3<S7EK;L1> &<,[(>N!5D5$KQQY@Z0\9ZTGB1]Q@G.N+B$;
M&64U"55<1>^T%FZ2?/.@XBE@G\JP-LGJ8P0)':A#?F:47Q'F%#^9A;SH^"DO
MVJPE90RV_7*FXG6WV<4$FXFM5J&E'2NOU257$"GVH@<&PU-<X"6<_5M%"^=S
MQ4?%*_!VW.,(0:C/X2=A\CF/]FY"/A?>[RB?FU"?LU!1TQF7D>RCP!8BT$)D
M-JXN8Q>GM)#L^)V*6E<(U9HQ/8>_4"*XWT_[W+,X"19XF=-?%)(UORSW[.:<
M6=]+[LA:>-P==BDBD&L'R'L"SL'9L,H'[/PHL'TODK4+P,^=#J"F1.AH(0O<
MR<@L#G&V:"*6-9;;2N !X<2[8S#Z3DH<FVI;9Q'7L_CZ.8X-N@U& #[(OZLS
MZ46RK:Z0.W@=B_Y @_6>Z\:NC^NZ1"?TA@/=<5'#4FOK>2!FM]0_KOR\(G1C
ML;H#\K?RB[PHM74\%)'RNPSI& HV**0WZBX&BY&9M?4\$I27Z@4\N^IV$^&*
M$^MWD\_!HBW:<6*BS:]NM9=?/:]P35S-4$;\7C*'X]W6_T14,KEW+6:IL"ED
M!W@!1W85>.QH_0H'5*PLO&O"KV<= Q(FN/9Y<5N=M0"E[##:CPJ!20!." ]O
MT'DUKN!V% 5Y1S6,1;+ &TP7<1G0'3!X!M6TWO/_%86$A0YKQ9:N.\?4/#3W
M0N]R8;&Y=8*YC4LR:V($;JQWAP?>SB6PL#)'('@Y6R%^&+:$^WD&1GC_#8+:
M]9$YD,;E1(5L_ 4M'T.O5 20G(+#Y@4<?YQQC'9-.#2)/&"^<;V7R T@*\"V
M=-X($-IOWO!BTO<DR3JC2+UWJ7)CD4*3NYAO!=B.R[:"2<%'B;FE"[]?UF3C
M%E'E>3XZFWG<7SB>G*7++P:RE8FLF3S=GGT8 -2'36# 2J\'9>$7#V_6^+0;
M5CI:+>20AU[Q6#&^_$O@*B?#-PO\7P+##:Y! 9"P\SL!OQ/ME&3M0SS!2<TS
MW*KU>:.YXR[@V.Y#,,:]J7<A8<&N9I4"E1GH1NOI9T/J84OT=A$^5=Z7>('K
MAN$LF-VAQBQHXPO^VQ963E"*S2#(GK3=A$VTB$ ]5DQ<2;2/EDFMS9(4F\2"
M"2G/U)MH!(ND!Q^:\IIQSW(<NLL:#U\+^0=02P,$%     @ 48"L6F-V6Y[>
M)@  O54" !0   !E<W M,C R-3 S,S%?9&5F+GAM;.U=6W/;.+)^WU_A]7DY
MI[8\SCV3U&2W9,E.-!M;'DM.)K.U-463D,2$(C4 *5OY]0?@12(E7D"PFQ?%
M53L;6Q;1S?X:0*/1EU_^];"PCE:$,M.QWQT__>G)\1&Q=<<P[=F[X]OQ26_<
M'PZ/__7/HZ.__?+WDY.C]\0F5'.)<72W/NH[B^58-X\F5+/9U*&+H_]U%_]W
M='(T=]WEV]/3^_O[GW3^'::;E##'HSIAXH.CDQ,^8#1DGQ(QX-NC2\<^NM36
M1T^?'3W]^>W+UV^?O3ZZG?2/GCUY]C)XY&^_6*;][4YCY(CS;;-WQS%*#W?4
M^LFAL]-G3YX\/XV^>!Q\\^V#^"#Q_?OG_K>?OGGSYM3_Z^:KS$S[(A_VZ>GO
MEQ_'^IPLM!/39JYFZX( ,]\R_\./CJZYOB0+^3K*_(;X[23ZVHGXZ.3ILY/G
M3W]Z8,:&1?X=P]V0B0_P\C3XX[&0U]'1+]2QR V9'OFO^-9=+\F[8V8NEI;@
MW/]L3LGTW3%ARQ,AZ2?/ U+_PS_XD_[9=VSF6*8A(#K3+/'&XSDA[O&1&/CV
M9KAA@G^?K 6\I^(OIYD/GOX3DZ\_KS5*;'=.7%/7+*;,YNXX\%P/^3Q;D+'+
M?UYP2J4XW7WV% ;LS8#,F?;GFCTCS+3'KJ-_FSN6P5>)\[\\TUW?VIIGF)R-
MB78G1BY@7&W4TV"):.BERJH1"!&P5XZK2E]C\PO+N2^E7YN'?)8 .#K3F,E%
M<\WW ?[&_B)9R%#:,S#3<&BO"',%7&.B>]1T35(,<>I#4/*Y(FXPIZ\)'<^Y
M6A2RL_\$V"+ M9;+GFL!W[N)S>30RG@,B"D^YL+TA<\TFU.P76ZA<$M%!KB\
M9X'8NR$K8GO%H$7? R.K\[>RUD/&/&+T=-WQ_)?CJY%M:-0HEDWQ"&"+TCG_
MIK,FQ%>4T3VW(]G<7%[S+;>0RYQ' _:P%@5_F59;&L)'X?C;F_"2S&4]![C!
MILU\2>YR'ZY!]R39+!P :O'EYPC#LPBW(ASFOJ<.8[<V/R!9YG=BO-?XH6/G
MLX_\-R+6M0O-I)\TR^./]E:::0FV+APZUBPR('>[BEF,2UV,P.SH<79MEVJZ
MZVG6I>:&I&*L3&%DHDP$;MIMN!D0VUF8MN8ZE#/![4EA.>D<BH%I>=R:.]>H
MS==TEE@ 2KRMVO@(+_J9F+,Y)]A;$:K-2(]O6HNE6"\X6R/_A]X]W[3*OE^I
M8:'U-5A1 BJZ:Z[X*:$L_YE#@,^MZ&1SY=B?^(Y'C!CI\I-(8C0H^WI+]7P\
MNO:UM#2_NT^BV?X#XO)U1&%GCQX$PCUU:Y9E+O]I*'=*IF4ORZ;$$#"\AJ:_
M+%\[7X?A(=N*D66K>(3MLJ]179;?#&=HY,L47M"7_GL8)H=*.*M/##+5/,L]
M/@K)Q)G>C&':[BE_Y#3\SNG^XZ%@D7EU%MQB4F8U>!I7L',^!-6].W*R(5R.
MW[0!8H<?% '[@CE9D,4=H26EFWATLY)C<*E95CG>Q ,;CKB>FK8IELZ/G';(
M@?A::;][XHW(@TML@QC'OOIS.I:C)[Y@B:L,AT9/<:N66.^./78RT[3EUJ<Z
MFEYPPY OEYIU[3"?S]X=\VWC?7&QZ*VG&KOS7ST<[U2L5:?$<EGTB;]Z^>(K
M1?)4[76$N[-G^UY/X:==<=.=[P<]MZ]1NN;[@7^< 7X?.9J1'B0TH4>3+\<5
M)V(NU*&R$R!\>DJ=A1K(KE-:F@XU"'UW_(0/X<^8M[KE<&OAW;%+/:**Y.Z)
M<WOZ2I[%^AZE_J4+**9EJ7<1W=(2#G%^"HMSX*EDPG_)-8RSPXUA)%#S2&UW
MN$YAF"N]$+!GF8 I(29\I#;_\_I&N[_D;%/3OU<#A2J=QD;%.H-/AJQ"8)YG
M W-4$9O/#OTVM*^IHQ.&!DZ22!?7P"QYA0"] %WJ-L3X@OO1L6<30A>1_Y&-
M*"<^H]H"#:T"JMOEH'OH%0DTA/-ESGRK!.@5@=ZK$D-W>F;YL@D!> 4RGX0+
M9$"FA.]RQD1[Z#%&W'0[,-5[DOGHYES>!3GG"R&4]^N\#49%XZ\I66JF<?X@
M_("$GPU&[IS0' 0J3P09BIT"KI0H0QQ_AL81$[$T;+H&3CH,;V -:;X_+0EU
MU\+IZG(%$&?LI6 6?CO))=5-B/*E%YU5LYT2528.RHSIX/$FDD8D;1S7P+6V
M%B=;7*? #I$NFEQ9\HK0 ?8#<'+\<6.L61K%<\2E$^DH/*GRBN#)\094@.>3
M%F0RH,*S2Z3#\.S)*X(GVQ=0!9[H&O:,V%Q0:"99/K%.VL]% HQPRSOTJT'G
M&^H1W1MBB0NZCZ9V9UJ(-Q*21+MIR\E*-,(TVX]0:3+RC9._J<6/T\C;61JA
M#EI_.5*+D,KV0"A=[X;.O<^F.^][S'46A$9ZLL9!3(ID]["3DV2$8K;_005%
M7U-0C?HT"AWT;Z<**L(DQQFAM@BB;V$'LUWE;$W/H!T.,5IX<'1P 4O()1(^
MK/\A%E':VTM5 ]YDLBEU\2R5*[D(+&!WA*#I!)FZ*%%>N\-W;\KL2RB"(MOU
MH&1-&X;/"^=*,XVAW=>6IJM9,?+05G4QP0[N_C)BC #,<4XHGXB\A><?Q/S#
MF0C]IV0NPH%7),A5$'EB5X2_%3=3X(])I:AW<8TL+>$(ZQR'A@K2-R+<W][F
M?L7X&G!9ZB:T&2A!L(.S54:,$8)Y[HO2D1 3AR\*^P4JSD3JXOJ<.4N^ T\H
MT9A'URF+;VJ(1/DQ.^5"5!1;!%]N5$5I_&YMPE6&*PZG&22EB3Q="9 R'NS6
MD2I/ I&\\Z(?E/P/<5@Q;,44 MU")4]2$2IY_@>U3)3=N0B,2@J!;J*2)JDH
MHAC1_< 71'2,"LEUT=(KEF&$7K;_PD\A.TWFD&US\L!RR_:J9<7%^IAJEC@A
M699S+P1WX="!X]VY4\_:3\= ND8J1;M3MIFB> MST!37O]AI.S!->IX[=ZBH
MDX+G8-JCU,55+U=R**ED>Q2#6EC8.(54NFE+9,H,)W=LC]S(<T7U55&F%ANG
M.*D# 2LAO>*D,A#$/A#+&-I1L,:$>LP-_H"-7S;A@U@><^2*DHT68X ;?2/J
MOXCA'_*VI2NQ$,VDV$E;14J4$CEHU;T9(2<8\S&;3B<QRQ%;8;+:$>9Q;*^:
M=,813%%==H9'.GAE4:D0=1G648)6Z\VPS9H$!; D;QHB0> =>AB?3IM2N,";
M0'SLS@A]1R2%YQ=%R?NE.*^I,P6_=8N/W%SH0@F))T2!<QH9$XM_/ M:85@]
MV^@9"RX/P9-KKDB8F@GMDY(CVIF9(2M$F9H72M'X2]''A'.PO3,'1BR-0H,W
MU"6P295-X6E"W;2(BF<'Y(:V2[A!A5$:(95,-S#)EI+,"4$]8>7*L9VD.D!/
MDPPJG5G),L4D>2 HC<L^+9PM)YM.HT>W$M#D2*JPU(7Z*4FLEQ><Y2" U>.T
MPP65']?\0)$P3LN/TS]_X-QS9O@AE*Z'_)489UH7:1:.OT&BK89XG';"3D2%
MJKC^AKIV<59")0YS%U$T8Y]*9];C3#$5E^-07(^C,MP(1F1R[,Y@L",2F;(:
M%6R4E!C8;5^*#XXE+CI$RPK!S,C>EJCL49/Q/PWXK_;LFE#3,9 BD]'8[(Q&
MX %57$5$W:&UQRZ2?N11:O*:JI2K*T=8$K5$U"#:;3WB=R8!!B>=1B>LG SQ
M2-0. 4$C[ ^#C$=$I3-K8::8)(J&*"*ST^+FRA,O,IKNQ0-@S)]RM+MRMBPI
M48FZ(H"XAAJ%'2Q3EGI'MK+20I4I,%(UVF)@KDR#V,9VU2"ZQ?]!#%3+)MF)
MS4].>,4E1Z"O[16[+,>%F[S0KQ97S;DFOC<#^L9JGT"%#6PS6D(:T*QN&WMA
MJ+??"29-J;.Q2"9P)$6P?X_OV"[7C'/+_]:[8T9F82P(Y.UGQ$6@I<+L=VP_
M9?_!1%.A5%I8,*6V0LJ%+3E#TR!+%Q96N=$=:H.P_12L%9Y* VMCV&NEE8M'
MGFHF#/%T.:%TIDFE]>>3NE!!LKOVV['A 2.$A15!$[,5+A/6![Q5=9GL.=:$
M$96[/F284)%8<-HVI1>M0($BGU:#T0#2J!1(2V*.(-7VP,%+FFYSIQ)YZ.2%
M6!R\I@CD;LT)%-0RB'1BU<L24&$L&E @/@H@V70:];A)@Y(C)YG0-.7Z&INF
MSVFHY%?8V'VTW8+.?VNL/)3'U#YY!X!4(A]X6/\/7&&CP!V369$!_'CRF*TE
M 4AQ;E:V+?48]U-5^NDA/_!Q^QE6LZB6QC>N,-A+=/<1-?!N;6WA4%>$ET1Q
M)<T'_8"PVHKDY5R%P$5*PN9[#/E!-44*HWV@^V;ZZWI0:"*N$\$:[_]QM/0C
M=\\?"-5-!GXUJL! ![9-%;&"-N8L8,1/B&\0WASZ;2@XJH)MGDAE>H J^GB_
M>D$&$YLX&2[,*$B-&&*!X:N+'XH?Y_2&<%.;F2X9$[HR=1*\T W1G5D@?W!O
M<3U<=\'$JPU!K/ZEFS"0V$D:6%]2271@%T@736'*1 LB8V2+#ZK[/S:E0O99
MP:] F$-3V9*"#L9O?\)$\[D2I=0(,W,B;J)#!Y[DA=SU-3876P6>5S>;9"NZ
M;I2#74Z4,A41D2H."28N+.<^>\&MN-I&!!C^(KM/JH*A^\/Y!7.@*O80PM]7
MI%J@T+J33J05CAM).++DA!0^,B!\ ]--## 20W<)@J1,) (^E (/P]J0P1GL
MWN:[S]Q<"K^KN.6-8X]31J(\_3:X52015!"NS,V(X@R;$DJC4H#8=0**J+7"
MY)*<A05R*[YK4"K:MC77-8N,IM=4U"IQUT)Y_$#99;R0(U0]-SFBW3(L9"6)
M%</"%4=</8ND(O_?H;U?<AX81RF2W9F"<A(L+J@$@UZLYDN- *93[=!>*"U(
MM"N&- Y6_ 4<"M]\-9]6QV&+"4W&%P\$UC4E2\TTHOTXW(9[=A JW6.,N/@H
M2C'1:7CEQ"Q3+0EXMPQ[EM>V54;TNF7M2,@/K]Y2*G$^IL$M+ZV657:7W@&
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
M([)&C)N*CZG*>9ML =1W^1%- USEB%0^M[16[;9"^%*<Z?"5VF0U5&#NT7Z
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
M:3!I 6>_-=8!<B3&'5%^NC4\78CC3-._6<X,Q2]30*S1>Q3%<U?<KBR2)5H
M1FA;01_Q-\,VN\:7<6+O2P0IC$^$A(K&J>(>)PKUB ()UL XY--"B[?$0:9
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
M_0:*<2X?<>S<8[1,DMW#%E:B[\<5_2>B\_+O5!LA'Z,)5BTN9!QZZX=T:@/
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
MLS[ / 4@!P22 P % :1<6;92(;R_.-7+A?>D^@#1OXT=CSPERN5@\>5#%*?
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
M=H+\$)$9#S)K4K5,B^6>=7K2P*_$HDPS>X_(/:V2IE\+;:\>E./4.\MU2CH
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
M?=1:7-0%E7UC76D0$C_O4--&1ELCR%O7Y0=*#WU ,-1P\JD(#J$RD'^.BEO
M_MG?Q8=2"Y @.[CB\,2=2<7K&'UH=((CJY4^%^51F7?B7A8<%;+W^7&-P:;B
MIME3I9?*(!YK4EL00B&,2\J_SUX3?*7!\/G1R8?\ )&CJ^=2:2H@@Q3'NAB8
MC,85 B)4&0\E*J-MG5%=7VS+0.^7I//XDI0]$]4?D=QQAM^//!A$3T?R[9__
M]-7;HR__DJ!*?\L9/!FD+"C>C4)<-9C^,?33Y!0'/KEJL:?,<^XPDP<^#P!A
M$7[R*2J^G<4^EY$]Y[,01;WS?7ES\L7A%\H<KGUNVK=975R497-S@L@W<]BU
M/,KF3&QAHN6Q^> '9+='(4Z6[L8GQ[WZ3A4.-?S $\$A>L07GZ/\^QD\\+KX
MD'-=BJSN V\5>SA>Q5=QY.U<T/JSL(E)7GD=BUF(&I9#)*J0!H.@HG0Y#.51
M,S:U_7X\K;[^%,B@\P04QTHHGS2=4\PG0D8J,_(.F;;?B*J,Z@Z"&7(I%;:(
MWW9^^@*5FLAA%Z:G$53R'-O@Q%W#9/-5'@ BX:'?HN)C]#/[W.HI(^52S;0D
MQ'1 '=^\#_LMI!*/+!N-R<<.)Y=)17UIH;4Q^PC]3#^S*@9\3M1CD%HX#4BV
M+&9[[X?X@OQS[!(5G 4,MQ5O0] M"/ IHM]:[P\NYA!7*NI(:E\:M[$3)FMR
M$2W!=@6]H/SP?K4^]T,G='THUI>D\8Y6>KLETR7\/TURUXP*FL$K:DRX1676
M\@&H,F(6U]L4\E25_]&).Z18U%U:]FRN5OB^<0(\Q0VKLN+XKT&9K"M )"Q&
M=I>B<N@"%8,/UE%\ ,-;][2E(F7*;*Y7G%*CC'8-8W>#O5V 5^O2_)Q,=KG+
M%S,K<W)@1'=^-@CR+*!MX0+1^DP(NL(Z 2V&\"TY$A+.[]]'4"* UJHZ=_P8
M_9#7""XE]CR7V(94\Q4,&\J%DK34%(UN*NO8-LK)2BKE2T7K/*U_YP0?G#3[
M<[0N"+UFNZ>^MTYQ2OZ<< Y<093-M! 8T#0,H"&,]2E<=!4I/T#U[56LC<K%
MZQMF+=HPKS(@7G,.?PLQ1$:$M0Q%FIZE VP'Q8'0O,S*Y::_?U36MG4=*<"F
M=#L-V#ZS>M#J" S_"E*E[&0-(1)I.SMX:9#W"!AR+YT'/,EK>!(0C=KH)D!
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
M:DVAO.M&Y(Z/2)$(Z?V(_?L-8?WR$<?DC+O&$"9$\*N4KY-9]J[QEJ ']4%
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
MJL6)9;6*RF&6Y4""4$=(&!]_DVJ@\*R2MG[I.+$;R2-S.K*%:2 JA)B!2X-
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
MH,QC86^*F3V5P=':<+:6J9B9,[;^B\J7P@I$Y+-%TQ^]0)4D5?8%\+CQR]H
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
M1J?DE+5KY/+DI=WI 8,L2-3T!JN$MJA X2X=6ZUJYN*Q0=V)=:]YERTC9/)
M"^ ]E<H.[MY#,3\KB?]_Q,'\)*2!OT DG>M:#\)")/N*M9@\3:_F2 >U'G++
M*!B]L6P#:JFXX"YA6H:J] #8P0VV1FLKPDW@@?J64.G#R*C!E >FU2FE>(>L
MMN]M:D@&.\7IP-M=-:7^QOQJY0=UB:D*K!^W\="26UX<OK^.2E%.4/=@RD<,
MQXFN$BSWRL+.T#NQEIBM] RCT$>-9H*]=5E$A)D _LI0KH%MAXLP.O!&AV!>
M<DC0''D4KU!<(\GKTR]1,)JR#0;^F"E%O;^66EK.B5K\;,)Z7_.*1&];GIYA
M_A1-L8VAW5P!@KVU 2+"3,!^O5\;,.$NW.YDCGD3AO49]9=LKA."+!J2=8GE
M+\WPDQ_3]'E&!5L%R:6>]EX//S<>8EK'=(^Q%!?@\YXD C!6?-&DFR6;]U U
M=X58W^L8!P_-HL!P&].:TPH=KG$) 5,KK%[[<J&=$JDH! LJ<%(MV2XN;V"D
M2@B8MH75VIE%JTPRII+11:WXGI/%#'NJ8C@VRPPV//3K4;%! WS?AIWVHUEI
M/[9Q*!S^7->_XZ([]\FI']X&T]#=+9#5=,,H1;NG.9>2 C9=()F)2\3[]2 ,
MYC[A3>KT!?!V*)DUG:I0U\K.:%K>#F=QRU+=B"943+LT8'BF4C-;([G#UB@,
M>)=\_IR ;D2SI!X,K#GYF6TJL,/;.^0Z0R_-2YJ0D ;Q'W0C74WX@1CG&LF"
M912T5 'FR(Y(-&$G\N"W_<UU85])L:?>EY PX4H]%9. LD>UA&,=:[R:3D_1
MK1$<\!VJKG/KSCLF%6=5M5X*N;&U-10JI])B/23M.Z'5?S.L:<>E 9C\S5$J
M"O,'0\J6Y^:M!N -*#NV:7B*ZI??3W)2, U*U$;^BOA3\.O8[,@FKWSJP,C-
M'BY.J1051"[[]2Q^N,T=>,[ 66 /\X4=X!5*NAM QP7%B)I>3Q+F3E2,ILN3
M1TO^/A_C=)NV 8QM&06S;7"E-#Q765,F+)-YP)>^Y^=Y2KN/Z'&1FNGU:(D*
M",]T*<WV1:&8P:''QD7%I >0AF*E9(RN4V'E+G85*Y>8R=8!49;<[GR@+6T%
M%=-K4@G(2I&9WC$K9[,O6VLZQJ$$9XW46AC9]AVOMCOY.9MD7'00,AZ3K=[W
M:)0'EV2U1E4I9_=LEHQI[%ED/63[#&63LWF1GA\Y%MJ,M#Y.S?;A%=ZQM8)E
MN@=SPG*R+)(:?2TZM$O%] XAK0,E@@+L8*FV+Z3/,&DX0^7'[A%:!:&TN)\
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
MMI,[?S+W0VIYSABM&%\(14:H[,G:4E/?,$ GY=@T:;C(5QLH6L%0@* '()0
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
MJ"G::/S*731BF$5K*Q/UM(AB0:5:SK 7Q?5XD#S-!DAOD-?0B1*UM(RFPZE
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
ML4^A6BS_F6PK59>5-E%+1O/X95]!K\@9?EIP6/<3Q<&>X)HX@11YZ1J^<O&
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
M#:S+ZTKTNA(<=!/G)1R'L&T^!8M?TTG#?H@67Z;V _8?4$L#!!0    ( %&
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
M=DE],2F_FQQ,MJK%GHRI?$WH_W33YT8[[EMSIM3)[H^C:2L#S(W[<D$^UVE
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
M4$L! A0#%     @ 48"L6KP-'X;:TP  =+T+ !               ( !
M &5S<"TR,#(U,#,S,2YH=&U02P$"% ,4    " !1@*Q:'R.E2GP-  #C=P
M$               @ $(U   97-P+3(P,C4P,S,Q+GAS9%!+ 0(4 Q0    (
M %& K%KL$M6Q. P  #6%   4              "  ;+A  !E<W M,C R-3 S
M,S%?8V%L+GAM;%!+ 0(4 Q0    ( %& K%IC=EN>WB8  +U5 @ 4
M      "  1SN  !E<W M,C R-3 S,S%?9&5F+GAM;%!+ 0(4 Q0    ( %&
MK%J"#5Y_$&<  !,W!0 4              "  2P5 0!E<W M,C R-3 S,S%?
M;&%B+GAM;%!+ 0(4 Q0    ( %& K%H8+,$ZBBD  !NA @ 4
M  "  6Y\ 0!E<W M,C R-3 S,S%?<')E+GAM;%!+ 0(4 Q0    ( %& K%I:
MZ20K[P<  -PF   *              "  2JF 0!E>#,Q+3$N:'1M4$L! A0#
M%     @ 48"L6I!"7(#4!P  >"<   H              ( !0:X! &5X,S$M
M,BYH=&U02P$"% ,4    " !1@*Q:$?^/M"H$  #_#0  "@
M@ $]M@$ 97@S,BTQ+FAT;5!+ 0(4 Q0    ( %& K%HMX"L^$P0  ,<.   *
M              "  8^Z 0!E>#,R+3(N:'1M4$L! A0#%     @ 48"L6O4_
M[==J#0  &@X   T              ( !RKX! &EM86=E7S P,2YJ<&=02P4&
2      L "P"? @  7\P!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>esp-20250331_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2025"
  xmlns:esp="http://espey.com/20250331"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2025"
  xmlns:us-gaap="http://fasb.org/us-gaap/2025"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="esp-20250331.xsd" xlink:type="simple"/>
    <context id="c0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2025-05-08</instant>
        </period>
    </context>
    <context id="c2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c10">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c11">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c22">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c23">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c24">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c26">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c27">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c34">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c35">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c41">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c42">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c43">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c45">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c48">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c49">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c50">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c53">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c55">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c56">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c60">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c61">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c64">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c65">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c66">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c68">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c69">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c71">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c72">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c73">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c74">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c75">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c76">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c77">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:IncentiveStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c78">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">esp:NonEmployeeDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c80">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">esp:NonEmployeeDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">esp:IndividualEmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c82">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c83">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c84">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c85">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:RestrictedStockPlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSevenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c87">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-07-01</instant>
        </period>
    </context>
    <context id="c88">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2024-07-01</endDate>
        </period>
    </context>
    <context id="c89">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c90">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c91">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">esp:NavysInvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c92">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c93">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c94">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c95">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:UnitsDeliveredMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c96">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c97">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c98">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c99">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">esp:MilestonesAchievedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c100">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c102">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c104">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-06-30</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c105">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c106">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c107">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c108">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPershares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="pure">
        <measure>pure</measure>
    </unit>
    <dei:DocumentType contextRef="c0" id="ixv-7087">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="c0" id="ixv-7088">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="c0" id="ixv-7089">2025-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus contextRef="c0" id="ixv-7090">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="c0" id="ixv-7091">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="c0" id="ixv-7092">1-4383</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="c0" id="ixv-39">ESPEY MFG. &amp; ELECTRONICS CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="c0" id="ixv-7093">NY</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="c0" id="ixv-7094">14-1387171</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="c0" id="ixv-7095">233 Ballston Avenue</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="c0" id="ixv-7096">Saratoga Springs</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="c0" id="ixv-7097">NY</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="c0" id="ixv-7098">12866</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="c0" id="ixv-7099">518</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="c0" id="ixv-7100">245-4400</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="c0" id="ixv-7101">Common Stock $.33-1/3 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="c0" id="ixv-7102">ESP</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="c0" id="ixv-7103">NYSEAMER</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="c0" id="ixv-7104">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="c0" id="ixv-7105">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="c0" id="ixv-7106">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="c0" id="ixv-7107">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="c0" id="ixv-7108">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="c0" id="ixv-7109">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="c1"
      decimals="INF"
      id="ixv-7110"
      unitRef="shares">2831399</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c2" decimals="0" id="ixv-7111" unitRef="usd">13859462</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c3" decimals="0" id="ixv-7112" unitRef="usd">4351970</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c2" decimals="0" id="ixv-7113" unitRef="usd">24635038</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" id="ixv-7114" unitRef="usd">18878631</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c2" decimals="0" id="ixv-7115" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c3" decimals="0" id="ixv-7116" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c2" decimals="0" id="ixv-7117" unitRef="usd">6407177</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c3" decimals="0" id="ixv-7118" unitRef="usd">6635490</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryRawMaterials contextRef="c2" decimals="0" id="ixv-7119" unitRef="usd">1859193</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="c3" decimals="0" id="ixv-7120" unitRef="usd">1693448</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess contextRef="c2" decimals="0" id="ixv-7121" unitRef="usd">554820</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="c3" decimals="0" id="ixv-7122" unitRef="usd">1645973</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c2" decimals="0" id="ixv-7123" unitRef="usd">14174050</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c3" decimals="0" id="ixv-7124" unitRef="usd">15904588</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryNet contextRef="c2" decimals="0" id="ixv-7125" unitRef="usd">16588063</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c3" decimals="0" id="ixv-7126" unitRef="usd">19244009</us-gaap:InventoryNet>
    <esp:DeferredTaxAssetsCurrent contextRef="c2" decimals="0" id="ixv-7127" unitRef="usd">923934</esp:DeferredTaxAssetsCurrent>
    <esp:DeferredTaxAssetsCurrent contextRef="c3" decimals="0" id="ixv-7128" unitRef="usd">895154</esp:DeferredTaxAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c2" decimals="0" id="ixv-7129" unitRef="usd">4945190</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c3" decimals="0" id="ixv-7130" unitRef="usd">3231402</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c2" decimals="0" id="ixv-7131" unitRef="usd">67358864</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c3" decimals="0" id="ixv-7132" unitRef="usd">53236656</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c2" decimals="0" id="ixv-7133" unitRef="usd">5480631</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c3" decimals="0" id="ixv-7134" unitRef="usd">3306275</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Assets contextRef="c2" decimals="0" id="ixv-7135" unitRef="usd">72839495</us-gaap:Assets>
    <us-gaap:Assets contextRef="c3" decimals="0" id="ixv-7136" unitRef="usd">56542931</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="c2" decimals="0" id="ixv-7137" unitRef="usd">2075635</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="c3" decimals="0" id="ixv-7138" unitRef="usd">3751209</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedSalariesCurrent contextRef="c2" decimals="0" id="ixv-7139" unitRef="usd">850695</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedSalariesCurrent contextRef="c3" decimals="0" id="ixv-7140" unitRef="usd">928163</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedVacationCurrent contextRef="c2" decimals="0" id="ixv-7141" unitRef="usd">593723</us-gaap:AccruedVacationCurrent>
    <us-gaap:AccruedVacationCurrent contextRef="c3" decimals="0" id="ixv-7142" unitRef="usd">511144</us-gaap:AccruedVacationCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent contextRef="c2" decimals="0" id="ixv-7143" unitRef="usd">276683</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent contextRef="c2" decimals="0" id="ixv-7144" unitRef="usd">1359315</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent contextRef="c3" decimals="0" id="ixv-7145" unitRef="usd">757552</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="c2" decimals="0" id="ixv-7146" unitRef="usd">63357</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="c3" decimals="0" id="ixv-7147" unitRef="usd">56862</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c2" decimals="0" id="ixv-7148" unitRef="usd">21018310</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c3" decimals="0" id="ixv-7149" unitRef="usd">9043422</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c2" decimals="0" id="ixv-7150" unitRef="usd">277030</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c3" decimals="0" id="ixv-7151" unitRef="usd">220607</us-gaap:TaxesPayableCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c2" decimals="0" id="ixv-7152" unitRef="usd">26514748</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c3" decimals="0" id="ixv-7153" unitRef="usd">15268959</us-gaap:LiabilitiesCurrent>
    <us-gaap:Liabilities contextRef="c2" decimals="0" id="ixv-7154" unitRef="usd">26514748</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="c3" decimals="0" id="ixv-7155" unitRef="usd">15268959</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesAuthorized contextRef="c2" decimals="0" id="ixv-7156" unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="c3" decimals="0" id="ixv-7157" unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued contextRef="c2" decimals="0" id="ixv-7158" unitRef="shares">3129874</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued contextRef="c3" decimals="0" id="ixv-7159" unitRef="shares">3129874</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="c2" decimals="0" id="ixv-7160" unitRef="shares">2816558</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding contextRef="c3" decimals="0" id="ixv-7161" unitRef="shares">2733958</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesHeldInEmployeeTrustShares contextRef="c2" decimals="0" id="ixv-7162" unitRef="shares">195234</us-gaap:CommonStockSharesHeldInEmployeeTrustShares>
    <us-gaap:CommonStockSharesHeldInEmployeeTrustShares contextRef="c3" decimals="0" id="ixv-7163" unitRef="shares">211487</us-gaap:CommonStockSharesHeldInEmployeeTrustShares>
    <us-gaap:CommonStockValue contextRef="c2" decimals="0" id="ixv-7164" unitRef="usd">1043291</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="c3" decimals="0" id="ixv-7165" unitRef="usd">1043291</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c2" decimals="0" id="ixv-7166" unitRef="usd">25172305</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c3" decimals="0" id="ixv-7167" unitRef="usd">23930428</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c2" decimals="0" id="ixv-7168" unitRef="usd">6731</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c3" decimals="0" id="ixv-7169" unitRef="usd">6544</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c2" decimals="0" id="ixv-7170" unitRef="usd">29287337</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c3" decimals="0" id="ixv-7171" unitRef="usd">26004790</us-gaap:RetainedEarningsAccumulatedDeficit>
    <esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock contextRef="c2" decimals="0" id="ixv-7172" unitRef="usd">55509664</esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock>
    <esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock contextRef="c3" decimals="0" id="ixv-7173" unitRef="usd">50985053</esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock>
    <esp:UnearnedEsopSharesCost contextRef="c2" decimals="0" id="ixv-7174" unitRef="usd">3868093</esp:UnearnedEsopSharesCost>
    <esp:UnearnedEsopSharesCost contextRef="c3" decimals="0" id="ixv-7175" unitRef="usd">3868093</esp:UnearnedEsopSharesCost>
    <us-gaap:TreasuryStockCommonShares contextRef="c2" decimals="0" id="ixv-7176" unitRef="shares">313316</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares contextRef="c3" decimals="0" id="ixv-7177" unitRef="shares">395916</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue contextRef="c2" decimals="0" id="ixv-7178" unitRef="usd">5316824</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue contextRef="c3" decimals="0" id="ixv-7179" unitRef="usd">5842988</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity contextRef="c2" decimals="0" id="ixv-7180" unitRef="usd">46324747</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c3" decimals="0" id="ixv-7181" unitRef="usd">41273972</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c2" decimals="0" id="ixv-7182" unitRef="usd">72839495</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c3" decimals="0" id="ixv-7183" unitRef="usd">56542931</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues contextRef="c4" decimals="0" id="ixv-7184" unitRef="usd">10302719</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c5" decimals="0" id="ixv-7185" unitRef="usd">8254653</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c0" decimals="0" id="ixv-7186" unitRef="usd">34354677</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c6" decimals="0" id="ixv-7187" unitRef="usd">27125408</us-gaap:Revenues>
    <us-gaap:CostOfRevenue contextRef="c4" decimals="0" id="ixv-7188" unitRef="usd">7354335</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c5" decimals="0" id="ixv-7189" unitRef="usd">6190462</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c0" decimals="0" id="ixv-7190" unitRef="usd">25441699</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c6" decimals="0" id="ixv-7191" unitRef="usd">19673265</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit contextRef="c4" decimals="0" id="ixv-7192" unitRef="usd">2948384</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c5" decimals="0" id="ixv-7193" unitRef="usd">2064191</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c0" decimals="0" id="ixv-7194" unitRef="usd">8912978</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c6" decimals="0" id="ixv-7195" unitRef="usd">7452143</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c4" decimals="0" id="ixv-7196" unitRef="usd">1197262</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c5" decimals="0" id="ixv-7197" unitRef="usd">971220</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c0" decimals="0" id="ixv-7198" unitRef="usd">3418206</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c6" decimals="0" id="ixv-7199" unitRef="usd">3044591</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss contextRef="c4" decimals="0" id="ixv-7200" unitRef="usd">1751122</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c5" decimals="0" id="ixv-7201" unitRef="usd">1092971</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c0" decimals="0" id="ixv-7202" unitRef="usd">5494772</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c6" decimals="0" id="ixv-7203" unitRef="usd">4407552</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeInterest contextRef="c4" decimals="0" id="ixv-7204" unitRef="usd">324705</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest contextRef="c5" decimals="0" id="ixv-7205" unitRef="usd">181940</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest contextRef="c0" decimals="0" id="ixv-7206" unitRef="usd">852544</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest contextRef="c6" decimals="0" id="ixv-7207" unitRef="usd">490883</us-gaap:InvestmentIncomeInterest>
    <us-gaap:OtherNonoperatingIncome contextRef="c4" decimals="0" id="ixv-7208" unitRef="usd">11601</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c5" decimals="0" id="ixv-7209" unitRef="usd">2881</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c0" decimals="0" id="ixv-7210" unitRef="usd">30595</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c6" decimals="0" id="ixv-7211" unitRef="usd">22275</us-gaap:OtherNonoperatingIncome>
    <us-gaap:NonoperatingIncomeExpense contextRef="c4" decimals="0" id="ixv-7212" unitRef="usd">336306</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c5" decimals="0" id="ixv-7213" unitRef="usd">184821</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c0" decimals="0" id="ixv-7214" unitRef="usd">883139</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c6" decimals="0" id="ixv-7215" unitRef="usd">513158</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c4" decimals="0" id="ixv-7216" unitRef="usd">2087428</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c5" decimals="0" id="ixv-7217" unitRef="usd">1277792</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c0" decimals="0" id="ixv-7218" unitRef="usd">6377911</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c6" decimals="0" id="ixv-7219" unitRef="usd">4920710</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c4" decimals="0" id="ixv-7220" unitRef="usd">382941</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c5" decimals="0" id="ixv-7221" unitRef="usd">245862</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c0" decimals="0" id="ixv-7222" unitRef="usd">1166608</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c6" decimals="0" id="ixv-7223" unitRef="usd">998866</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="c4" decimals="0" id="ixv-7224" unitRef="usd">1704487</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" id="ixv-7225" unitRef="usd">1031930</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-7226" unitRef="usd">5211303</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7227" unitRef="usd">3921844</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c4" decimals="0" id="ixv-7228" unitRef="usd">1727</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c5" decimals="0" id="ixv-7229" unitRef="usd">2151</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c0" decimals="0" id="ixv-7230" unitRef="usd">187</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c6" decimals="0" id="ixv-7231" unitRef="usd">7568</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c4" decimals="0" id="ixv-7232" unitRef="usd">1706214</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c5" decimals="0" id="ixv-7233" unitRef="usd">1034081</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c0" decimals="0" id="ixv-7234" unitRef="usd">5211490</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c6" decimals="0" id="ixv-7235" unitRef="usd">3929412</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:EarningsPerShareBasic
      contextRef="c4"
      decimals="2"
      id="ixv-7236"
      unitRef="usdPershares">0.66</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c5"
      decimals="2"
      id="ixv-7237"
      unitRef="usdPershares">0.41</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c0"
      decimals="2"
      id="ixv-7238"
      unitRef="usdPershares">2.03</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c6"
      decimals="2"
      id="ixv-7239"
      unitRef="usdPershares">1.58</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c4"
      decimals="2"
      id="ixv-7240"
      unitRef="usdPershares">0.63</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c5"
      decimals="2"
      id="ixv-7241"
      unitRef="usdPershares">0.4</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c0"
      decimals="2"
      id="ixv-7242"
      unitRef="usdPershares">1.95</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c6"
      decimals="2"
      id="ixv-7243"
      unitRef="usdPershares">1.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c4"
      decimals="INF"
      id="ixv-7244"
      unitRef="shares">2599960</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c5"
      decimals="INF"
      id="ixv-7245"
      unitRef="shares">2491906</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c0"
      decimals="INF"
      id="ixv-7246"
      unitRef="shares">2569514</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c6"
      decimals="INF"
      id="ixv-7247"
      unitRef="shares">2480153</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c4"
      decimals="INF"
      id="ixv-7248"
      unitRef="shares">2699674</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c5"
      decimals="INF"
      id="ixv-7249"
      unitRef="shares">2571921</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c0"
      decimals="INF"
      id="ixv-7250"
      unitRef="shares">2668928</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c6"
      decimals="INF"
      id="ixv-7251"
      unitRef="shares">2519708</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c4"
      decimals="3"
      id="ixv-7252"
      unitRef="usdPershares">0.25</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c5"
      decimals="3"
      id="ixv-7253"
      unitRef="usdPershares">0.175</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c0"
      decimals="3"
      id="ixv-7254"
      unitRef="usdPershares">0.75</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c6"
      decimals="3"
      id="ixv-7255"
      unitRef="usdPershares">0.475</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c7"
      decimals="INF"
      id="ixv-7256"
      unitRef="shares">2796758</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c7" decimals="0" id="ixv-7257" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c8" decimals="0" id="ixv-7258" unitRef="usd">24851718</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c9" decimals="0" id="ixv-7259" unitRef="usd">5004</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c10" decimals="0" id="ixv-7260" unitRef="usd">28232545</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c11"
      decimals="INF"
      id="ixv-7261"
      unitRef="shares">333116</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c11" decimals="0" id="ixv-7262" unitRef="usd">-5447820</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c12" decimals="0" id="ixv-7263" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c13" decimals="0" id="ixv-7264" unitRef="usd">44816645</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c14" decimals="0" id="ixv-7265" unitRef="usd">1704487</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c4" decimals="0" id="ixv-7266" unitRef="usd">1704487</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c4" decimals="0" id="ixv-7267" unitRef="usd">363</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c15" decimals="0" id="ixv-7268" unitRef="usd">1727</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c4" decimals="0" id="ixv-7269" unitRef="usd">1727</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c4" decimals="0" id="ixv-7270" unitRef="usd">1706214</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c16"
      decimals="INF"
      id="ixv-7271"
      unitRef="shares">19800</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c17" decimals="0" id="ixv-7272" unitRef="usd">227364</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c18"
      decimals="INF"
      id="ixv-7273"
      unitRef="shares">-19800</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c18" decimals="0" id="ixv-7274" unitRef="usd">130996</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c4" decimals="0" id="ixv-7275" unitRef="usd">358360</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c17" decimals="0" id="ixv-7276" unitRef="usd">93223</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c4" decimals="0" id="ixv-7277" unitRef="usd">93223</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c4"
      decimals="2"
      id="ixv-7278"
      unitRef="usdPershares">0.25</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c14" decimals="0" id="ixv-7279" unitRef="usd">649695</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c4" decimals="0" id="ixv-7280" unitRef="usd">649695</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c19"
      decimals="INF"
      id="ixv-7281"
      unitRef="shares">2816558</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c19" decimals="0" id="ixv-7282" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c20" decimals="0" id="ixv-7283" unitRef="usd">25172305</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c21" decimals="0" id="ixv-7284" unitRef="usd">6731</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c22" decimals="0" id="ixv-7285" unitRef="usd">29287337</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c23"
      decimals="INF"
      id="ixv-7286"
      unitRef="shares">313316</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c23" decimals="0" id="ixv-7287" unitRef="usd">-5316824</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c24" decimals="0" id="ixv-7288" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c2" decimals="0" id="ixv-7289" unitRef="usd">46324747</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c25"
      decimals="INF"
      id="ixv-7290"
      unitRef="shares">2733958</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c25" decimals="0" id="ixv-7291" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c26" decimals="0" id="ixv-7292" unitRef="usd">23930428</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c27" decimals="0" id="ixv-7293" unitRef="usd">6544</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c28" decimals="0" id="ixv-7294" unitRef="usd">26004790</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c29"
      decimals="INF"
      id="ixv-7295"
      unitRef="shares">395916</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c29" decimals="0" id="ixv-7296" unitRef="usd">-5842988</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c30" decimals="0" id="ixv-7297" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c3" decimals="0" id="ixv-7298" unitRef="usd">41273972</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c31" decimals="0" id="ixv-7299" unitRef="usd">5211303</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-7300" unitRef="usd">5211303</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c0" decimals="0" id="ixv-7301" unitRef="usd">39</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c32" decimals="0" id="ixv-7302" unitRef="usd">187</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c0" decimals="0" id="ixv-7303" unitRef="usd">187</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c0" decimals="0" id="ixv-7304" unitRef="usd">5211490</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c33"
      decimals="INF"
      id="ixv-7305"
      unitRef="shares">82600</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c34" decimals="0" id="ixv-7306" unitRef="usd">955621</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c35"
      decimals="INF"
      id="ixv-7307"
      unitRef="shares">-82600</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c35" decimals="0" id="ixv-7308" unitRef="usd">526164</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c0" decimals="0" id="ixv-7309" unitRef="usd">1481785</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c34" decimals="0" id="ixv-7310" unitRef="usd">286256</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c0" decimals="0" id="ixv-7311" unitRef="usd">286256</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c0"
      decimals="2"
      id="ixv-7312"
      unitRef="usdPershares">0.75</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c31" decimals="0" id="ixv-7313" unitRef="usd">1928756</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c0" decimals="0" id="ixv-7314" unitRef="usd">1928756</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c19"
      decimals="INF"
      id="ixv-7315"
      unitRef="shares">2816558</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c19" decimals="0" id="ixv-7316" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c20" decimals="0" id="ixv-7317" unitRef="usd">25172305</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c21" decimals="0" id="ixv-7318" unitRef="usd">6731</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c22" decimals="0" id="ixv-7319" unitRef="usd">29287337</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c23"
      decimals="INF"
      id="ixv-7320"
      unitRef="shares">313316</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c23" decimals="0" id="ixv-7321" unitRef="usd">-5316824</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c24" decimals="0" id="ixv-7322" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c2" decimals="0" id="ixv-7323" unitRef="usd">46324747</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c36"
      decimals="INF"
      id="ixv-7324"
      unitRef="shares">2706633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c36" decimals="0" id="ixv-7325" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c37" decimals="0" id="ixv-7326" unitRef="usd">23448890</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c38" decimals="0" id="ixv-7327" unitRef="usd">2988</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c39" decimals="0" id="ixv-7328" unitRef="usd">24015739</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c40"
      decimals="INF"
      id="ixv-7329"
      unitRef="shares">423241</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c40" decimals="0" id="ixv-7330" unitRef="usd">-6013701</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c41" decimals="0" id="ixv-7331" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c42" decimals="0" id="ixv-7332" unitRef="usd">38223829</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c43" decimals="0" id="ixv-7333" unitRef="usd">1031930</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" id="ixv-7334" unitRef="usd">1031930</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c5" decimals="0" id="ixv-7335" unitRef="usd">452</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c44" decimals="0" id="ixv-7336" unitRef="usd">2151</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c5" decimals="0" id="ixv-7337" unitRef="usd">2151</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c5" decimals="0" id="ixv-7338" unitRef="usd">1034081</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c45"
      decimals="INF"
      id="ixv-7339"
      unitRef="shares">26125</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c46" decimals="0" id="ixv-7340" unitRef="usd">281517</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c47"
      decimals="INF"
      id="ixv-7341"
      unitRef="shares">-26125</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c47" decimals="0" id="ixv-7342" unitRef="usd">163216</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c5" decimals="0" id="ixv-7343" unitRef="usd">444733</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c46" decimals="0" id="ixv-7344" unitRef="usd">75420</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c5" decimals="0" id="ixv-7345" unitRef="usd">75420</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c5"
      decimals="3"
      id="ixv-7346"
      unitRef="usdPershares">0.175</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c43" decimals="0" id="ixv-7347" unitRef="usd">436113</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c5" decimals="0" id="ixv-7348" unitRef="usd">436113</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c48"
      decimals="INF"
      id="ixv-7349"
      unitRef="shares">2732758</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c48" decimals="0" id="ixv-7350" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c49" decimals="0" id="ixv-7351" unitRef="usd">23805827</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c50" decimals="0" id="ixv-7352" unitRef="usd">5139</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c51" decimals="0" id="ixv-7353" unitRef="usd">24611556</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c52"
      decimals="INF"
      id="ixv-7354"
      unitRef="shares">397116</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c52" decimals="0" id="ixv-7355" unitRef="usd">-5850485</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c53" decimals="0" id="ixv-7356" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c54" decimals="0" id="ixv-7357" unitRef="usd">39341950</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c55"
      decimals="INF"
      id="ixv-7358"
      unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c55" decimals="0" id="ixv-7359" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c56" decimals="0" id="ixv-7360" unitRef="usd">23283245</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c57" decimals="0" id="ixv-7361" unitRef="usd">-2429</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c58" decimals="0" id="ixv-7362" unitRef="usd">21867720</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c59"
      decimals="INF"
      id="ixv-7363"
      unitRef="shares">427241</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c59" decimals="0" id="ixv-7364" unitRef="usd">-6038691</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c60" decimals="0" id="ixv-7365" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c61" decimals="0" id="ixv-7366" unitRef="usd">35879758</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c62" decimals="0" id="ixv-7367" unitRef="usd">3921844</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7368" unitRef="usd">3921844</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c6" decimals="0" id="ixv-7369" unitRef="usd">1589</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c63" decimals="0" id="ixv-7370" unitRef="usd">7568</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c6" decimals="0" id="ixv-7371" unitRef="usd">7568</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c6" decimals="0" id="ixv-7372" unitRef="usd">3929412</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c64"
      decimals="INF"
      id="ixv-7373"
      unitRef="shares">30125</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c65" decimals="0" id="ixv-7374" unitRef="usd">316007</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c66"
      decimals="INF"
      id="ixv-7375"
      unitRef="shares">-30125</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c66" decimals="0" id="ixv-7376" unitRef="usd">188206</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c6" decimals="0" id="ixv-7377" unitRef="usd">504213</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c65" decimals="0" id="ixv-7378" unitRef="usd">206575</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c6" decimals="0" id="ixv-7379" unitRef="usd">206575</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c6"
      decimals="3"
      id="ixv-7380"
      unitRef="usdPershares">0.475</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c62" decimals="0" id="ixv-7381" unitRef="usd">1178008</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c6" decimals="0" id="ixv-7382" unitRef="usd">1178008</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c48"
      decimals="INF"
      id="ixv-7383"
      unitRef="shares">2732758</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c48" decimals="0" id="ixv-7384" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c49" decimals="0" id="ixv-7385" unitRef="usd">23805827</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c50" decimals="0" id="ixv-7386" unitRef="usd">5139</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c51" decimals="0" id="ixv-7387" unitRef="usd">24611556</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c52"
      decimals="INF"
      id="ixv-7388"
      unitRef="shares">397116</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity contextRef="c52" decimals="0" id="ixv-7389" unitRef="usd">-5850485</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c53" decimals="0" id="ixv-7390" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c54" decimals="0" id="ixv-7391" unitRef="usd">39341950</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-7392" unitRef="usd">5211303</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7393" unitRef="usd">3921844</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation contextRef="c0" decimals="0" id="ixv-7394" unitRef="usd">286256</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c6" decimals="0" id="ixv-7395" unitRef="usd">206575</us-gaap:ShareBasedCompensation>
    <us-gaap:Depreciation contextRef="c0" decimals="0" id="ixv-7396" unitRef="usd">334732</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="c6" decimals="0" id="ixv-7397" unitRef="usd">343825</us-gaap:Depreciation>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c0" decimals="0" id="ixv-7398" unitRef="usd">435298</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c6" decimals="0" id="ixv-7399" unitRef="usd">311664</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c0" decimals="0" id="ixv-7400" unitRef="usd">-28780</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c6" decimals="0" id="ixv-7401" unitRef="usd">-916006</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c6" decimals="0" id="ixv-7402" unitRef="usd">-590</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c0" decimals="0" id="ixv-7403" unitRef="usd">-228313</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c6" decimals="0" id="ixv-7404" unitRef="usd">-439862</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c6" decimals="0" id="ixv-7405" unitRef="usd">-35666</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c0" decimals="0" id="ixv-7406" unitRef="usd">-2655946</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c6" decimals="0" id="ixv-7407" unitRef="usd">-278237</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c0" decimals="0" id="ixv-7408" unitRef="usd">1713788</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c6" decimals="0" id="ixv-7409" unitRef="usd">-728069</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c0" decimals="0" id="ixv-7410" unitRef="usd">-1675574</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c6" decimals="0" id="ixv-7411" unitRef="usd">1623255</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedSalaries contextRef="c0" decimals="0" id="ixv-7412" unitRef="usd">-77468</us-gaap:IncreaseDecreaseInAccruedSalaries>
    <us-gaap:IncreaseDecreaseInAccruedSalaries contextRef="c6" decimals="0" id="ixv-7413" unitRef="usd">-178004</us-gaap:IncreaseDecreaseInAccruedSalaries>
    <esp:IncreaseDecreaseInVacationAccrual contextRef="c0" decimals="0" id="ixv-7414" unitRef="usd">82579</esp:IncreaseDecreaseInVacationAccrual>
    <esp:IncreaseDecreaseInVacationAccrual contextRef="c6" decimals="0" id="ixv-7415" unitRef="usd">-119481</esp:IncreaseDecreaseInVacationAccrual>
    <esp:IncreaseDecreaseinESOPPayable contextRef="c0" decimals="0" id="ixv-7416" unitRef="usd">-158615</esp:IncreaseDecreaseinESOPPayable>
    <esp:IncreaseDecreaseinESOPPayable contextRef="c6" decimals="0" id="ixv-7417" unitRef="usd">-110982</esp:IncreaseDecreaseinESOPPayable>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="c0" decimals="0" id="ixv-7418" unitRef="usd">601763</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="c6" decimals="0" id="ixv-7419" unitRef="usd">437611</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld contextRef="c0" decimals="0" id="ixv-7420" unitRef="usd">6495</esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld>
    <esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld contextRef="c6" decimals="0" id="ixv-7421" unitRef="usd">4549</esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c0" decimals="0" id="ixv-7422" unitRef="usd">11974888</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c6" decimals="0" id="ixv-7423" unitRef="usd">-375829</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable contextRef="c0" decimals="0" id="ixv-7424" unitRef="usd">56423</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable contextRef="c6" decimals="0" id="ixv-7425" unitRef="usd">719217</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c0" decimals="0" id="ixv-7426" unitRef="usd">18219771</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c6" decimals="0" id="ixv-7427" unitRef="usd">7350662</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c0" decimals="0" id="ixv-7428" unitRef="usd">2509088</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c6" decimals="0" id="ixv-7429" unitRef="usd">4501997</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <esp:ProceedsFromGrantAward contextRef="c6" decimals="0" id="ixv-7430" unitRef="usd">4228722</esp:ProceedsFromGrantAward>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c6" decimals="0" id="ixv-7431" unitRef="usd">150</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c0" decimals="0" id="ixv-7432" unitRef="usd">26616220</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c6" decimals="0" id="ixv-7433" unitRef="usd">18442671</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities contextRef="c0" decimals="0" id="ixv-7434" unitRef="usd">20860000</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities contextRef="c6" decimals="0" id="ixv-7435" unitRef="usd">14846438</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c0" decimals="0" id="ixv-7436" unitRef="usd">-8265308</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c6" decimals="0" id="ixv-7437" unitRef="usd">-3869358</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c0" decimals="0" id="ixv-7438" unitRef="usd">1928756</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c6" decimals="0" id="ixv-7439" unitRef="usd">1178008</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:ProceedsFromRepurchaseOfEquity contextRef="c0" decimals="0" id="ixv-7440" unitRef="usd">1481785</us-gaap:ProceedsFromRepurchaseOfEquity>
    <us-gaap:ProceedsFromRepurchaseOfEquity contextRef="c6" decimals="0" id="ixv-7441" unitRef="usd">504213</us-gaap:ProceedsFromRepurchaseOfEquity>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c0" decimals="0" id="ixv-7442" unitRef="usd">-446971</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c6" decimals="0" id="ixv-7443" unitRef="usd">-673795</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="c0" decimals="0" id="ixv-7444" unitRef="usd">9507492</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="c6" decimals="0" id="ixv-7445" unitRef="usd">2807509</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c3" decimals="0" id="ixv-7446" unitRef="usd">4351970</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c61" decimals="0" id="ixv-7447" unitRef="usd">2748755</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c2" decimals="0" id="ixv-7448" unitRef="usd">13859462</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c54" decimals="0" id="ixv-7449" unitRef="usd">5556264</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:IncomeTaxesPaidNet contextRef="c0" decimals="0" id="ixv-7450" unitRef="usd">1139015</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet contextRef="c6" decimals="0" id="ixv-7451" unitRef="usd">1162000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock contextRef="c0" id="ixv-5132">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Note 1. Basis of Presentation&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;In the opinion of management the accompanying
unaudited financial statements contain all adjustments (consisting of normal recurring adjustments) necessary for a fair presentation
of the results for such periods. The results for any interim period are not necessarily indicative of the results to be expected for the
full fiscal year. Certain information and footnote disclosures normally included in financial statements prepared in accordance with United
States generally accepted accounting principles have been condensed or omitted. The preparation of these financial statements requires
us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues and expenses, and related disclosure
of assets and liabilities. On an ongoing basis, we evaluate our estimates and judgments, including those related to revenue recognition,
inventories, income taxes, and stock-based compensation. Specific to inventories, including work-in-process and contracts in process,
management evaluates, quarterly, those estimates used in determining the cost to complete for each contract on Espey Mfg. &amp;amp; Electronics
Corp.&#x2019;s (the &#x201c;Company&#x201d;) sales backlog. The change in estimates may affect the reported amount of inventories and gross
profit in the current or a future period and could result in the Company recording a loss contingency when a loss is determined to be
probable and reasonably estimated. Management bases its estimates on historical experience and on various other factors that are believed
to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying amounts of assets
and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates under different assumptions
or conditions. These financial statements should be read in conjunction with the Company's most recent audited financial statements included
in its report on Form 10-K for the year ended June 30, 2024. Certain reclassifications may have been made to the prior year financial
statements to conform to the current year presentation.&lt;/p&gt;</us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock>
    <us-gaap:InvestmentTextBlock contextRef="c0" id="ixv-5139">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0; text-align: justify"&gt;Note 2. Investment Securities&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0.5in 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;FASB Accounting Standards Codification
(&#x201c;ASC&#x201d;) 820 &#x201c;Fair Value Measurements and Disclosures&#x201d; establishes a fair value hierarchy which requires an
entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard
describes three levels of inputs that may be used to measure fair value:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"&gt;&lt;tr style="vertical-align: top"&gt;
&lt;td style="width: 22.5pt"&gt;&lt;/td&gt;&lt;td style="width: 13.5pt"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: justify"&gt;Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity
has the ability to access as of the measurement date.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"&gt;&lt;tr style="vertical-align: top"&gt;
&lt;td style="width: 22.5pt"&gt;&lt;/td&gt;&lt;td style="width: 13.5pt"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: justify"&gt;Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar
assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable
market data.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;" width="100%"&gt;&lt;tr style="vertical-align: top"&gt;
&lt;td style="width: 22.3pt"&gt;&lt;/td&gt;&lt;td style="width: 13.7pt"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: justify"&gt;Level 3: Significant unobservable inputs that reflect a reporting entity&#x2019;s own assumptions about
the assumptions that market participants would use in pricing an asset or liability.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The carrying amounts of financial instruments,
including cash and cash equivalents, short term investments, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of March 31, 2025 and June 30, 2024 because of the immediate or short-term maturity of these financial instruments.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Investment securities at March 31, 2025 and June
30, 2024 consisted of certificates of deposit, municipal bonds and U.S. Treasury bills. The Company classifies investment securities as
available-for-sale which have been determined to be level 1 assets. The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at March 31, 2025 and June 30, 2024 are as follows:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Gross&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Gross&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Amortized&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Unrealized&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Unrealized&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Fair&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Cost&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Gains&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Losses&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Value&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline"&gt;March 31, 2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 40%"&gt;Certificates of deposit&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;23,492,000&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-9"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-10"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;23,492,000&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Municipal bonds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,134,518&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;8,988&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(468&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,143,038&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;U.S. Treasury bills&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-11"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-12"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-13"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-14"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total investment securities&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;24,626,518&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;8,988&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(468&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;24,635,038&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline"&gt;June 30, 2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;Certificates of deposit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;17,651,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-15"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-16"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;17,651,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Municipal bonds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;709,059&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,824&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3,313&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;711,570&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 1pt; text-align: left"&gt;U.S. Treasury bills&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;510,288&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,773&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-17"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;516,061&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total investment securities&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;18,870,347&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;11,597&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(3,313&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;18,878,631&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The portfolio is diversified and highly liquid
and primarily consists of investment grade fixed income instruments. At March 31, 2025, the Company did not have any investments in individual
securities that have been in a continuous loss position considered to be other than temporary.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;As of March 31, 2025 and June 30, 2024, the remaining
contractual maturities of available-for-sale debt securities were as follows:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Years to Maturity&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Less than&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;One to&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right"&gt;One Year&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right"&gt;Five Years&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline"&gt;March 31, 2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 55%; padding-bottom: 1pt"&gt;Available-for-sale&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"&gt;23,139,022&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"&gt;1,496,016&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"&gt;24,635,038&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-decoration: underline"&gt;June 30, 2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Available-for-sale&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;17,889,582&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;989,049&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;18,878,631&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:InvestmentTextBlock>
    <us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock contextRef="c0" id="ixv-7452">The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at March 31, 2025 and June 30, 2024 are as follows:&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Gross&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Gross&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Amortized&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Unrealized&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Unrealized&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Fair&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Cost&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Gains&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Losses&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Value&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline"&gt;March 31, 2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 40%"&gt;Certificates of deposit&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;23,492,000&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-9"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-10"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;23,492,000&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Municipal bonds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,134,518&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;8,988&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(468&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,143,038&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;U.S. Treasury bills&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-11"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-12"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-13"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-14"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total investment securities&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;24,626,518&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;8,988&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(468&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;24,635,038&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline"&gt;June 30, 2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;Certificates of deposit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;17,651,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-15"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-16"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;17,651,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Municipal bonds&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;709,059&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,824&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3,313&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;711,570&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 1pt; text-align: left"&gt;U.S. Treasury bills&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;510,288&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,773&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-17"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;516,061&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total investment securities&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;18,870,347&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;11,597&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(3,313&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;18,878,631&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c67" decimals="0" id="ixv-7453" unitRef="usd">23492000</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c67" decimals="0" id="ixv-7454" unitRef="usd">23492000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c68" decimals="0" id="ixv-7455" unitRef="usd">1134518</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c68" decimals="0" id="ixv-7456" unitRef="usd">8988</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c68" decimals="0" id="ixv-7457" unitRef="usd">468</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c68" decimals="0" id="ixv-7458" unitRef="usd">1143038</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c2" decimals="0" id="ixv-7459" unitRef="usd">24626518</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c2" decimals="0" id="ixv-7460" unitRef="usd">8988</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c2" decimals="0" id="ixv-7461" unitRef="usd">468</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c2" decimals="0" id="ixv-7462" unitRef="usd">24635038</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c70" decimals="0" id="ixv-7463" unitRef="usd">17651000</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c70" decimals="0" id="ixv-7464" unitRef="usd">17651000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c71" decimals="0" id="ixv-7465" unitRef="usd">709059</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c71" decimals="0" id="ixv-7466" unitRef="usd">5824</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c71" decimals="0" id="ixv-7467" unitRef="usd">3313</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c71" decimals="0" id="ixv-7468" unitRef="usd">711570</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c72" decimals="0" id="ixv-7469" unitRef="usd">510288</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c72" decimals="0" id="ixv-7470" unitRef="usd">5773</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c72" decimals="0" id="ixv-7471" unitRef="usd">516061</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c3" decimals="0" id="ixv-7472" unitRef="usd">18870347</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c3" decimals="0" id="ixv-7473" unitRef="usd">11597</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c3" decimals="0" id="ixv-7474" unitRef="usd">3313</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" id="ixv-7475" unitRef="usd">18878631</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock contextRef="c0" id="ixv-5434">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;As of March 31, 2025 and June 30, 2024, the remaining
contractual maturities of available-for-sale debt securities were as follows:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Years to Maturity&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;Less than&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;One to&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right"&gt;One Year&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: right"&gt;Five Years&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-decoration: underline"&gt;March 31, 2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 55%; padding-bottom: 1pt"&gt;Available-for-sale&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"&gt;23,139,022&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"&gt;1,496,016&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 1pt solid; text-align: right"&gt;24,635,038&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-decoration: underline"&gt;June 30, 2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Available-for-sale&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;17,889,582&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;989,049&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;18,878,631&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c2" decimals="0" id="ixv-7476" unitRef="usd">23139022</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue contextRef="c2" decimals="0" id="ixv-7477" unitRef="usd">1496016</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c2" decimals="0" id="ixv-7478" unitRef="usd">24635038</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c3" decimals="0" id="ixv-7479" unitRef="usd">17889582</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue contextRef="c3" decimals="0" id="ixv-7480" unitRef="usd">989049</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" id="ixv-7481" unitRef="usd">18878631</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:EarningsPerShareTextBlock contextRef="c0" id="ixv-5541">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Note 3. Net Income per Share&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Basic net income per share excludes dilution and
is computed by dividing net income available to common stockholders by the weighted average number of common shares outstanding for the
period. Diluted net income per share reflects the potential dilution that could occur if securities or other contracts to issue common
stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the income of the
Company. The computation of diluted net income per share excluded options to purchase 2,500 shares of our common stock for the three and
nine months ended March 31, 2025 and 60,766 shares for the three and nine months ended March 31, 2024, as the effect of including them
would be anti-dilutive. As unearned shares owned by the Company&#x2019;s sponsored leveraged employee stock ownership plan (the &#x201c;ESOP&#x201d;)
are released or committed-to-be-released, the shares become outstanding for earnings-per-share computations.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the three month
periods ended March 31:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right"&gt;2025&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right"&gt;2024&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Numerator:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 70%; padding-bottom: 2.5pt"&gt;Net income&lt;/td&gt;
    &lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: black 2.25pt double"&gt;$&lt;/td&gt;
    &lt;td style="width: 12%; border-bottom: black 2.25pt double; text-align: right"&gt;1,704,487&lt;/td&gt;
    &lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: black 2.25pt double"&gt;$&lt;/td&gt;
    &lt;td style="width: 12%; border-bottom: black 2.25pt double; text-align: right"&gt;1,031,930&lt;/td&gt;
    &lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Denominator:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Basic EPS:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,796,758&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,706,633&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(200,652&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(222,566&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;3,794&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;7,778&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;60&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;61&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Denominator for basic earnings per common shares &#x2013;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,599,960&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,491,906&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Diluted EPS:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,796,758&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,706,633&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(200,652&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(222,566&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;3,794&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;7,778&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;60&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;61&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average dilutive effect of stock options&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;99,714&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;80,015&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Denominator for diluted earnings per common shares &#x2013;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,699,674&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,571,921&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the nine month
periods ended March 31:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;2024&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Numerator:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 70%; text-align: left; padding-bottom: 2.5pt"&gt;Net income&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right"&gt;5,211,303&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right"&gt;3,921,844&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Denominator:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Basic EPS:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,733,958&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,702,633&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(211,487&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(233,646&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;41,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,437&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,560&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-left: 20pt"&gt;Denominator for basic earnings per common shares &#x2013;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,569,514&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,480,153&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Diluted EPS:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,733,958&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,702,633&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(211,487&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(233,646&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;41,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,437&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,560&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average dilutive effect of stock options&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;99,414&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;39,555&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 20pt"&gt;Denominator for diluted earnings per common shares &#x2013;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,668,928&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,519,708&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c4" decimals="0" id="ixv-7482" unitRef="shares">2500</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c0" decimals="0" id="ixv-7483" unitRef="shares">2500</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c5" decimals="0" id="ixv-7484" unitRef="shares">60766</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c6" decimals="0" id="ixv-7485" unitRef="shares">60766</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="c0" id="ixv-5546">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the three month
periods ended March 31:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right"&gt;2025&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; border-bottom: black 1pt solid; text-align: right"&gt;2024&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Numerator:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 70%; padding-bottom: 2.5pt"&gt;Net income&lt;/td&gt;
    &lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: black 2.25pt double"&gt;$&lt;/td&gt;
    &lt;td style="width: 12%; border-bottom: black 2.25pt double; text-align: right"&gt;1,704,487&lt;/td&gt;
    &lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: black 2.25pt double"&gt;$&lt;/td&gt;
    &lt;td style="width: 12%; border-bottom: black 2.25pt double; text-align: right"&gt;1,031,930&lt;/td&gt;
    &lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Denominator:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Basic EPS:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,796,758&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,706,633&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(200,652&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(222,566&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;3,794&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;7,778&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;60&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;61&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Denominator for basic earnings per common shares &#x2013;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,599,960&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,491,906&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Diluted EPS:&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,796,758&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2,706,633&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(200,652&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;(222,566&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;3,794&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;7,778&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;60&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;61&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average dilutive effect of stock options&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;99,714&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 1pt solid; text-align: right"&gt;80,015&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Denominator for diluted earnings per common shares &#x2013;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,699,674&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: black 2.25pt double; text-align: right"&gt;2,571,921&lt;/td&gt;
    &lt;td style="white-space: nowrap; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The following table sets forth the reconciliation
of the numerators and denominators of the basic and diluted earnings per share computations for continuing operations for the nine month
periods ended March 31:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;2024&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Numerator:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="width: 70%; text-align: left; padding-bottom: 2.5pt"&gt;Net income&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right"&gt;5,211,303&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; border-bottom: Black 2.5pt double; text-align: right"&gt;3,921,844&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Denominator:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Basic EPS:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,733,958&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,702,633&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(211,487&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(233,646&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;41,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,437&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,560&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-left: 20pt"&gt;Denominator for basic earnings per common shares &#x2013;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,569,514&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,480,153&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Diluted EPS:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Common shares outstanding, beginning of period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,733,958&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;2,702,633&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Unearned ESOP shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(211,487&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(233,646&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average common shares issued during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;41,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,606&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;Weighted average ESOP shares earned during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,437&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,560&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt"&gt;Weighted average dilutive effect of stock options&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;99,414&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;39,555&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 20pt"&gt;Denominator for diluted earnings per common shares &#x2013;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 40pt"&gt;Weighted average common shares&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,668,928&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,519,708&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss contextRef="c4" decimals="0" id="ixv-7486" unitRef="usd">1704487</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" id="ixv-7487" unitRef="usd">1031930</us-gaap:NetIncomeLoss>
    <esp:CommonSharesOutstandingBasic contextRef="c4" decimals="0" id="ixv-7488" unitRef="shares">2796758</esp:CommonSharesOutstandingBasic>
    <esp:CommonSharesOutstandingBasic contextRef="c5" decimals="0" id="ixv-7489" unitRef="shares">2706633</esp:CommonSharesOutstandingBasic>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c4" decimals="0" id="ixv-7490" unitRef="shares">200652</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c5" decimals="0" id="ixv-7491" unitRef="shares">222566</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c4" decimals="0" id="ixv-7492" unitRef="shares">3794</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c5" decimals="0" id="ixv-7493" unitRef="shares">7778</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic contextRef="c4" decimals="0" id="ixv-7494" unitRef="shares">60</us-gaap:WeightedAverageNumberOfSharesIssuedBasic>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic contextRef="c5" decimals="0" id="ixv-7495" unitRef="shares">61</us-gaap:WeightedAverageNumberOfSharesIssuedBasic>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation contextRef="c4" decimals="0" id="ixv-7496" unitRef="shares">2599960</us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation contextRef="c5" decimals="0" id="ixv-7497" unitRef="shares">2491906</us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation>
    <esp:CommonSharesOutstandingDiluted contextRef="c4" decimals="0" id="ixv-7498" unitRef="shares">2796758</esp:CommonSharesOutstandingDiluted>
    <esp:CommonSharesOutstandingDiluted contextRef="c5" decimals="0" id="ixv-7499" unitRef="shares">2706633</esp:CommonSharesOutstandingDiluted>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c4" decimals="0" id="ixv-7500" unitRef="shares">200652</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c5" decimals="0" id="ixv-7501" unitRef="shares">222566</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c4" decimals="0" id="ixv-7502" unitRef="shares">3794</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c5" decimals="0" id="ixv-7503" unitRef="shares">7778</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c4" decimals="0" id="ixv-7504" unitRef="shares">60</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c5" decimals="0" id="ixv-7505" unitRef="shares">61</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c4" decimals="0" id="ixv-7506" unitRef="shares">99714</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c5" decimals="0" id="ixv-7507" unitRef="shares">80015</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c4" decimals="0" id="ixv-7508" unitRef="shares">2699674</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c5" decimals="0" id="ixv-7509" unitRef="shares">2571921</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-7510" unitRef="usd">5211303</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7511" unitRef="usd">3921844</us-gaap:NetIncomeLoss>
    <esp:CommonSharesOutstandingBasic contextRef="c0" decimals="0" id="ixv-7512" unitRef="shares">2733958</esp:CommonSharesOutstandingBasic>
    <esp:CommonSharesOutstandingBasic contextRef="c6" decimals="0" id="ixv-7513" unitRef="shares">2702633</esp:CommonSharesOutstandingBasic>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c0" decimals="0" id="ixv-7514" unitRef="shares">211487</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c6" decimals="0" id="ixv-7515" unitRef="shares">233646</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c0" decimals="0" id="ixv-7516" unitRef="shares">41606</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c6" decimals="0" id="ixv-7517" unitRef="shares">5606</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic contextRef="c0" decimals="0" id="ixv-7518" unitRef="shares">5437</us-gaap:WeightedAverageNumberOfSharesIssuedBasic>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic contextRef="c6" decimals="0" id="ixv-7519" unitRef="shares">5560</us-gaap:WeightedAverageNumberOfSharesIssuedBasic>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation contextRef="c0" decimals="0" id="ixv-7520" unitRef="shares">2569514</us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation contextRef="c6" decimals="0" id="ixv-7521" unitRef="shares">2480153</us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation>
    <esp:CommonSharesOutstandingDiluted contextRef="c0" decimals="0" id="ixv-7522" unitRef="shares">2733958</esp:CommonSharesOutstandingDiluted>
    <esp:CommonSharesOutstandingDiluted contextRef="c6" decimals="0" id="ixv-7523" unitRef="shares">2702633</esp:CommonSharesOutstandingDiluted>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c0" decimals="0" id="ixv-7524" unitRef="shares">211487</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c6" decimals="0" id="ixv-7525" unitRef="shares">233646</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c0" decimals="0" id="ixv-7526" unitRef="shares">41606</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c6" decimals="0" id="ixv-7527" unitRef="shares">5606</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c0" decimals="0" id="ixv-7528" unitRef="shares">5437</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c6" decimals="0" id="ixv-7529" unitRef="shares">5560</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c0" decimals="0" id="ixv-7530" unitRef="shares">99414</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c6" decimals="0" id="ixv-7531" unitRef="shares">39555</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c0" decimals="0" id="ixv-7532" unitRef="shares">2668928</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c6" decimals="0" id="ixv-7533" unitRef="shares">2519708</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="c0" id="ixv-5985">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;Note 4. Stock Based Compensation&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&#160;&lt;/p&gt;

&lt;p style="font: italic 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&lt;span style="font-style: normal; font-weight: normal"&gt;The
Company follows ASC 718 &#x201c;Compensation - Stock Compensation&#x201d; in establishing standards for the accounting for
transactions in which an entity exchanges its equity instruments for goods or services, as well as transactions in which an entity
incurs liabilities in exchange for goods or services that are based on the fair value of the entity&#x2019;s equity instruments or
that may be settled by the issuance of those equity instruments. ASC 718 requires that the cost resulting from all share-based
payment transactions be recognized in the financial statements based on the fair value of the share-based payment. ASC 718
establishes fair value as the measurement objective in accounting for share-based payment transactions with employees, except for
equity instruments held by employee share ownership plans. &lt;/span&gt;&lt;/p&gt;

&lt;p style="font: italic 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Total stock-based compensation expense recognized
in the statements of comprehensive income for the three-month periods ended March 31, 2025 and 2024 was $93,223 and $75,420, respectively,
before income taxes. The amount of this stock-based compensation expense related to non-qualified stock options (&#x201c;NQSOs&#x201d;)
for the three-month periods ended March 31, 2025 and 2024 was $8,362 and $8,179, respectively. The deferred tax benefit related to the
NQSOs as of March 31, 2025 and 2024 was approximately $1,756 and $1,718, respectively. Total stock-based compensation expense recognized
in the statements of comprehensive income for the nine-month periods ended March 31, 2025 and 2024 was $286,256 and $206,575, respectively,
before income taxes. The amount of this stock-based compensation expense related to NQSOs for the nine-month periods ended March 31, 2025
and 2024 was $23,783 and $26,724, respectively. The deferred tax benefit related to the NQSOs as of March 31, 2025 and 2024 was approximately
$4,994 and $5,612, respectively. The remaining stock option expense in each year related to incentive stock options (&#x201c;ISOs&#x201d;)
which are not deductible by the Company when exercised, assuming a qualifying disposition and as such no deferred tax benefit was established
related to these amounts.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;As of March 31, 2025, there was $340,519 of unrecognized
compensation cost related to stock option awards that is expected to be recognized as expense over the next 1.75 years, of which $311,672
relates to ISOs and $28,847 relates to NQSOs. The total deferred tax benefit related to these awards is expected to be $6,058.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company has one employee stock option plan
under which options or stock awards may be granted, the 2017 Stock Option and Restricted Stock Plan (the "2017 Plan"). The Board
of Directors may grant options to acquire shares of common stock to employees and non-employee directors of the Company at the fair market
value of the common stock on the date of grant. The maximum aggregate number of shares of Common Stock subject to options or awards to
non-employee directors is 133,000 and the maximum aggregate number of shares of Common Stock subject to options or awards granted to non-employee
directors during any single fiscal year is the lesser of 13,300 and 33 1/3% of the total number of shares subject to options or awards
granted in such fiscal year. The maximum number of shares subject to options or awards granted to any individual employee may not exceed
15,000 in a fiscal year. Generally, options granted have a two-year vesting period based on two years of continuous service and have a
ten-year contractual life. Option grants provide for accelerated vesting if there is a change in control. Shares issued upon the exercise
of options are from those held in Treasury. Options covering 400,000 shares are authorized for issuance under the 2017 Plan. As of March
31, 2025, options covering 103,925 shares have been exercised and options covering 293,606 shares are outstanding. Options covering 2,469
shares remain available for grant after factoring the cancelled shares, which are eligible to be re-granted. While no further grants of
options may be made under the Company&#x2019;s 2007 Stock Option and Restricted Stock Plan, as of March 31, 2025, 24,350 options were outstanding
under such plan of which all are vested and exercisable.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;ASC 718 requires the use of a valuation model
to calculate the fair value of stock-based awards. The Company has elected to use the Black-Scholes option valuation model, which incorporates
various assumptions including those for dividend yield, volatility, expected life and interest rates.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The table below outlines the weighted average
assumptions that the Company used to calculate the fair value of each option award for the nine months ended March 31, 2025 and 2024.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt; &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt; &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2024&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 70%; text-align: left"&gt;Dividend yield&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;3.79%&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;3.63%&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left"&gt;Company&#x2019;s expected volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;32.85%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31.20%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="text-align: left"&gt;Risk-free interest rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4.35%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4.39%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left"&gt;Expected term&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5.1 yrs&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5.3 yrs&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td&gt;Weighted average fair value per share of options granted during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;5.37&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;4.03&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company declared and paid regular cash dividends
of $0.75 per share for the nine months ended March 31, 2025 and paid $0.475 cash dividends for the nine months ended March 31, 2024. Expected
stock price volatility is based on the historical volatility of the Company&#x2019;s stock. The risk-free interest rate is based on the
implied yield available on U.S. Treasury issues with an equivalent term approximating the expected life of the options. The expected option
term (in years) represents the estimated period of time until exercise and is based on actual historical experience.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The following table summarizes stock option activity
during the nine months ended March 31, 2025:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto; border-spacing: 0px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="15" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Employee Stock Option Plans&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Number of&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Remaining&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Aggregate&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Subject&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Exercise&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Contractual&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Intrinsic&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;to Option&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Price&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Term&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Value&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 48%"&gt;Balance at July 1, 2024&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;322,056&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;18.41&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;6.59&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-18"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;79,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;21.79&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;9.29&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td&gt;Exercised&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(82,600&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;17.94&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-19"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Forfeited or expired&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(500&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;)&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;16.54&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-20"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="padding-bottom: 2.5pt"&gt;Outstanding at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;317,956&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.37&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;6.83&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,471,791&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Vested or expected to vest at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;302,783&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.10&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;6.64&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,363,682&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="padding-bottom: 2.5pt"&gt;Exercisable at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;162,556&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.38&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;4.86&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,262,070&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The aggregate intrinsic value in the table above
represents the total pretax intrinsic value (the difference between the closing sale price of the Company&#x2019;s common stock as reported
on the NYSE American on March 31, 2025 and the exercise price, multiplied by the number of in-the-money options) that would have been
received by the option holders if all option holders had exercised their options on March 31, 2025. This amount changes based on the fair
market value of the Company&#x2019;s common stock. The intrinsic value of options exercised during the nine months ended March 31, 2025
and 2024 was $841,603 and $186,186, respectively.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;The following table summarizes changes in non-vested stock options
during the nine months ended March 31, 2025:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; margin-left: auto; margin-right: auto; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted Number&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;of Shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Grant Date&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Subject&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;to Option&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;(per Option)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 74%"&gt;Non-vested at July 1, 2024&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;147,300&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;4.15&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;79,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;5.37&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Vested&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(70,400&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;4.16&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Forfeited or expired&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(500&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;)&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;4.03&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Non-vested at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;155,400&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;4.76&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c4" decimals="0" id="ixv-7534" unitRef="usd">93223</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c5" decimals="0" id="ixv-7535" unitRef="usd">75420</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c73" decimals="0" id="ixv-7536" unitRef="usd">8362</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c74" decimals="0" id="ixv-7537" unitRef="usd">8179</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c73" decimals="0" id="ixv-7538" unitRef="usd">1756</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c74" decimals="0" id="ixv-7539" unitRef="usd">1718</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c0" decimals="0" id="ixv-7540" unitRef="usd">286256</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c6" decimals="0" id="ixv-7541" unitRef="usd">206575</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c75" decimals="0" id="ixv-7542" unitRef="usd">23783</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c76" decimals="0" id="ixv-7543" unitRef="usd">26724</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c75" decimals="0" id="ixv-7544" unitRef="usd">4994</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c76" decimals="0" id="ixv-7545" unitRef="usd">5612</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c2" decimals="0" id="ixv-7546" unitRef="usd">340519</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="c0" id="ixv-7547">P1Y9M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c77" decimals="0" id="ixv-7548" unitRef="usd">311672</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c78" decimals="0" id="ixv-7549" unitRef="usd">28847</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c0" decimals="0" id="ixv-7550" unitRef="usd">6058</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease
      contextRef="c79"
      decimals="INF"
      id="ixv-7551"
      unitRef="shares">133000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease
      contextRef="c80"
      decimals="INF"
      id="ixv-7552"
      unitRef="shares">13300</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease>
    <esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear contextRef="c80" id="ixv-7553">33 1/3%</esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease
      contextRef="c81"
      decimals="INF"
      id="ixv-7554"
      unitRef="shares">15000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c0" id="ixv-7555">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c82" id="ixv-7556">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c83"
      decimals="INF"
      id="ixv-7558"
      unitRef="shares">400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c84"
      decimals="0"
      id="ixv-7559"
      unitRef="shares">103925</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c85"
      decimals="0"
      id="ixv-7560"
      unitRef="shares">293606</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="c2" decimals="0" id="ixv-7561" unitRef="shares">2469</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber
      contextRef="c86"
      decimals="INF"
      id="ixv-7562"
      unitRef="shares">24350</esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="c0" id="ixv-6012">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The table below outlines the weighted average
assumptions that the Company used to calculate the fair value of each option award for the nine months ended March 31, 2025 and 2024.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt; &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt; &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2024&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 70%; text-align: left"&gt;Dividend yield&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;3.79%&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;3.63%&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left"&gt;Company&#x2019;s expected volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;32.85%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31.20%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="text-align: left"&gt;Risk-free interest rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4.35%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4.39%&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left"&gt;Expected term&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5.1 yrs&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5.3 yrs&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td&gt;Weighted average fair value per share of options granted during the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;5.37&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;4.03&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c0" decimals="4" id="ixv-7563" unitRef="pure">0.0379</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c6" decimals="4" id="ixv-7564" unitRef="pure">0.0363</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c0" decimals="4" id="ixv-7565" unitRef="pure">0.3285</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c6" decimals="4" id="ixv-7566" unitRef="pure">0.312</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c0" decimals="4" id="ixv-7567" unitRef="pure">0.0435</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c6" decimals="4" id="ixv-7568" unitRef="pure">0.0439</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c0" id="ixv-7569">P5Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c6" id="ixv-7570">P5Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="2"
      id="ixv-7571"
      unitRef="usdPershares">5.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c6"
      decimals="2"
      id="ixv-7572"
      unitRef="usdPershares">4.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <esp:DividendPayableAmountPerShare
      contextRef="c0"
      decimals="2"
      id="ixv-7573"
      unitRef="usdPershares">0.75</esp:DividendPayableAmountPerShare>
    <esp:DividendPayableAmountPerShare
      contextRef="c6"
      decimals="3"
      id="ixv-7574"
      unitRef="usdPershares">0.475</esp:DividendPayableAmountPerShare>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="c0" id="ixv-6077">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The following table summarizes stock option activity
during the nine months ended March 31, 2025:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto; border-spacing: 0px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="15" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Employee Stock Option Plans&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Number of&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Remaining&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Aggregate&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Subject&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Exercise&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Contractual&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Intrinsic&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;to Option&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Price&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Term&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;Value&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 48%"&gt;Balance at July 1, 2024&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;322,056&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;18.41&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;6.59&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt; &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-18"&gt;&#160;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;79,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;21.79&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;9.29&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td&gt;Exercised&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(82,600&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;17.94&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-19"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt; &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Forfeited or expired&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(500&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;)&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;16.54&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-20"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="padding-bottom: 2.5pt"&gt;Outstanding at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;317,956&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.37&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;6.83&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,471,791&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; "&gt; &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Vested or expected to vest at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;302,783&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.10&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;6.64&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,363,682&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="padding-bottom: 2.5pt"&gt;Exercisable at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;162,556&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.38&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;4.86&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt; &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,262,070&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c87"
      decimals="INF"
      id="ixv-7575"
      unitRef="shares">322056</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c87"
      decimals="2"
      id="ixv-7576"
      unitRef="usdPershares">18.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="c88" id="ixv-7577">P6Y7M2D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c89"
      decimals="INF"
      id="ixv-7578"
      unitRef="shares">79000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="c89"
      decimals="2"
      id="ixv-7579"
      unitRef="usdPershares">21.79</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <esp:WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted contextRef="c89" id="ixv-7580">P9Y3M14D</esp:WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c89"
      decimals="INF"
      id="ixv-7581"
      unitRef="shares">82600</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="c89"
      decimals="2"
      id="ixv-7582"
      unitRef="usdPershares">17.94</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="c89"
      decimals="INF"
      id="ixv-7583"
      unitRef="shares">500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="c89"
      decimals="2"
      id="ixv-7584"
      unitRef="usdPershares">16.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c90"
      decimals="INF"
      id="ixv-7585"
      unitRef="shares">317956</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c90"
      decimals="2"
      id="ixv-7586"
      unitRef="usdPershares">19.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="c89" id="ixv-7587">P6Y9M29D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="c90" decimals="0" id="ixv-7588" unitRef="usd">2471791</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="c90"
      decimals="INF"
      id="ixv-7589"
      unitRef="shares">302783</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="c90"
      decimals="2"
      id="ixv-7590"
      unitRef="usdPershares">19.1</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="c89" id="ixv-7591">P6Y7M20D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="c90" decimals="0" id="ixv-7592" unitRef="usd">2363682</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="c90"
      decimals="INF"
      id="ixv-7593"
      unitRef="shares">162556</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="c90"
      decimals="2"
      id="ixv-7594"
      unitRef="usdPershares">19.38</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="c89" id="ixv-7595">P4Y10M9D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 contextRef="c90" decimals="0" id="ixv-7596" unitRef="usd">1262070</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c0" decimals="0" id="ixv-7597" unitRef="usd">841603</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c6" decimals="0" id="ixv-7598" unitRef="usd">186186</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock contextRef="c0" id="ixv-6279">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;The following table summarizes changes in non-vested stock options
during the nine months ended March 31, 2025:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%; margin-left: auto; margin-right: auto; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted Number&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;of Shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Grant Date&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Subject&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;to Option&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;(per Option)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 74%"&gt;Non-vested at July 1, 2024&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;147,300&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;4.15&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;79,000&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;5.37&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Vested&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(70,400&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;4.16&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Forfeited or expired&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(500&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;)&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;4.03&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Non-vested at March 31, 2025&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;155,400&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;4.76&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="c3"
      decimals="INF"
      id="ixv-7599"
      unitRef="shares">147300</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c3"
      decimals="INF"
      id="ixv-7600"
      unitRef="usdPershares">4.15</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c0"
      decimals="INF"
      id="ixv-7601"
      unitRef="shares">79000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="INF"
      id="ixv-7602"
      unitRef="usdPershares">5.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
      contextRef="c0"
      decimals="INF"
      id="ixv-7603"
      unitRef="shares">70400</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="INF"
      id="ixv-7604"
      unitRef="usdPershares">4.16</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="c0"
      decimals="INF"
      id="ixv-7605"
      unitRef="shares">500</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="INF"
      id="ixv-7606"
      unitRef="usdPershares">4.03</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7607"
      unitRef="shares">155400</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c2"
      decimals="INF"
      id="ixv-7608"
      unitRef="usdPershares">4.76</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c0" id="ixv-6361">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;Note 5. Commitments and Contingencies&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company from time to time, enters into standby
letters of credit agreements with financial institutions primarily relating to the guarantee of future performance on certain contracts.
Contingent liabilities on outstanding standby letters of credit agreements aggregated to zero at March 31, 2025 and June 30, 2024. The
Company, as a U.S. Government contractor, is subject to audits, reviews, and investigations by the U.S. Government related to its negotiation
and performance of government contracts and its accounting for such contracts. Failure to comply with applicable U.S. Government standards
by a contractor may result in suspension from eligibility for award of any new government contract and a guilty plea or conviction may
result in debarment from eligibility for awards. The government may, in certain cases, terminate existing contracts, recover damages,
and impose other sanctions and penalties. As a result of contract audits, the Company will determine a range of possible outcomes and,
in accordance with ASC 450 &#x201c;Contingencies,&#x201d; the Company will accrue amounts within a range that appears to be its best estimate
of a possible outcome. Adjustments are made to accruals, if any, periodically based on current information.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;We are party to various litigation matters and
claims arising from time to time in the ordinary course of business. There are no pending litigation matters or claims which we believe
will have a material adverse effect on our business, financial condition, results of operations or cash flows.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company was awarded $7.4 million in funding
during the second quarter of fiscal year 2023 in support of facility and capital equipment upgrades for testing and qualification for
the United States Navy. The funding is part of the Navy&#x2019;s investment to improve and sustain the Surface Combatant Industrial Base.
The work is being conducted on the Company&#x2019;s property in Saratoga Springs, NY, and is in the final stages, nearing completion. The
Company expects to be paid within 30 days after the submission of three milestone invoices, but will not be paid for expenses incurred
in excess of the specified milestone payment limits. The Company has recorded any receipts of milestone payments received as a reduction
from the cost of the assets. The Company incurred an initial cash outlay to satisfy income tax obligations arising from the value of the
milestone payments received. The cash outlay arising from federal income tax obligations is expected to be recaptured in future periods.
Until recaptured, estimated tax obligations associated with the receipt of milestone payments are recorded on the balance sheet and included
in deferred tax assets. As of March 31, 2025, net deferred tax assets include a deferred tax asset of $888,032 associated with milestone
reimbursements received totaling $4,228,722. Included in property, plant, and equipment at March 31, 2025 was $2,535,297 not yet reimbursed
for facility and capital upgrades under the funding award, compared to $965,392 in spending not yet reimbursed included in property, plant,
and equipment at June 30, 2024. Included in accounts payable at March 31, 2025 was approximately $25,000 for facility and capital upgrades
eligible to be reimbursed under the funding award compared to $272,560 included in accounts payable at June 30, 2024.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;In June 2024, the Company notified the third-party
administrator of the IBEW Local 1799 Pension Fund of its intention to withdraw permanently from the plan. As required by the Employee
Retirement Income Security Act &#x201c;ERISA&#x201d;, the Company is subject to a termination withdrawal liability. The recorded termination
withdrawal obligation at March 31, 2025 and June 30, 2024 totaled $561,852 and $772,157, respectively, shown within the accounts payable
balance on the Company&#x2019;s balance sheets. As the Company was the only remaining contributing employer to the multiemployer pension
plan, its withdrawal constitutes a mass withdrawal termination. Final withdrawal calculations have been completed and are in line with
the established liability as of March 31, 2025.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;In December 2024, the Company was awarded $3.4
million in funding in support of facility and capital equipment upgrades. The funding is part of the Navy&#x2019;s investment to improve
and sustain the Surface Combatant Industrial Base. The grant is expected to be in force through calendar year 2026. Included in property,
plant, and equipment at March 31, 2025 was $776,329 not yet reimbursed for facility and capital equipment upgrades under the funding
award. Included in accounts payable at March 31, 2025 was approximately $152,701 for facility and capital upgrades eligible to be reimbursed
under the funding award.&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LettersOfCreditOutstandingAmount contextRef="c2" decimals="0" id="ixv-7609" unitRef="usd">0</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:LettersOfCreditOutstandingAmount contextRef="c3" decimals="0" id="ixv-7610" unitRef="usd">0</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:CustomerFunds contextRef="c2" decimals="-5" id="ixv-7611" unitRef="usd">7400000</us-gaap:CustomerFunds>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet contextRef="c2" decimals="0" id="ixv-7612" unitRef="usd">888032</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsGross contextRef="c2" decimals="0" id="ixv-7613" unitRef="usd">4228722</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c2" decimals="0" id="ixv-7614" unitRef="usd">2535297</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c3" decimals="0" id="ixv-7615" unitRef="usd">965392</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c2" decimals="0" id="ixv-7616" unitRef="usd">25000</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c3" decimals="0" id="ixv-7617" unitRef="usd">272560</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <esp:TerminationWithdrawalObligation contextRef="c2" decimals="0" id="ixv-7618" unitRef="usd">561852</esp:TerminationWithdrawalObligation>
    <esp:TerminationWithdrawalObligation contextRef="c3" decimals="0" id="ixv-7619" unitRef="usd">772157</esp:TerminationWithdrawalObligation>
    <us-gaap:CustomerFunds contextRef="c13" decimals="-5" id="ixv-7620" unitRef="usd">3400000</us-gaap:CustomerFunds>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c91" decimals="0" id="ixv-7621" unitRef="usd">776329</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c91" decimals="0" id="ixv-7622" unitRef="usd">152701</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="c0" id="ixv-6386">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Note 6. Revenue&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company follows ASC 606 &#x201c;Revenue from
Contracts with Customers&#x201d; to determine the recognition of revenue. This standard requires entities to assess the products or services
promised in contracts with customers at contract inception to determine the appropriate unit at which to record revenues.&#160;Revenue
is recognized when control of the promised products or services is transferred to customers at an amount that reflects the consideration
to which the entity expects to be entitled to in exchange for those products or services.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Significant judgment is required in determining
the satisfaction of performance obligations.&#160;Revenues from our performance obligations are satisfied over time using the output method
which considers the appraisal of results achieved and milestones reached or units delivered based on contractual shipment terms, typically
shipping point.&#160;Revenue is recognized when, or as, the customer takes control of the product or services.&#160;The output method
best depicts the transfer of control to the customer as the output method represents work completed. Control is typically transferred
to the customer at the shipping point, as the Company has a present right to payment, the customer has legal title to the asset, the customer
has the significant risks and rewards of ownership of the asset, and in most instances the customer has accepted the asset.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Total revenue recognized for the three and nine
months ended March 31, 2025 based on units delivered was $9,557,710 and $27,057,894, respectively, compared to $7,546,422 and $22,189,116
for the same period in fiscal year 2024. Total revenue recognized for the three and nine months ended March 31, 2025 based on milestones
achieved was $745,009 and $7,296,783, respectively, compared to $708,231 and $4,936,292 for the same period in fiscal year 2024.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company offers a standard one-year product
warranty. Product warranties offered by the Company are classified as assurance-type warranties, which means the warranty only guarantees
that the good or service functions as promised. Based on this, the provided warranty is not considered to be a distinct performance obligation.&#160;The
impact of variable consideration has been considered but none identified which would be required to be allocated to the transaction price
as of March 31, 2025. Our payment terms are generally 30-60 days.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Contract liabilities were $21,018,310 and
$9,043,422 as of March 31, 2025 and June 30, 2024, respectively. The increase in contract liabilities is primarily due to the
advance collection of cash on specific contracts, offset in part, by revenue recognized. Of the $9,043,422 that was in contract
liabilities as of June 30, 2024, $3,490,436 has been recognized in revenue as of the nine months ended March 31, 2025. The Company
used the practical expedient to expense incremental costs incurred to obtain a contract when the contract term is less than one
year.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company&#x2019;s backlog at March 31, 2025
totaling approximately $138 million is currently estimated to be recognized in the following fiscal years: 7.0% in 2025; 35.9% in 2026;
12.3% in 2027; 44.8% thereafter. The timing of supplier deliveries of material, production schedules, the completion of engineering
deliverables, among other factors, could cause these estimates to change.&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:Revenues contextRef="c92" decimals="0" id="ixv-7623" unitRef="usd">9557710</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c93" decimals="0" id="ixv-7624" unitRef="usd">27057894</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c94" decimals="0" id="ixv-7625" unitRef="usd">7546422</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c95" decimals="0" id="ixv-7626" unitRef="usd">22189116</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c96" decimals="0" id="ixv-7627" unitRef="usd">745009</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c97" decimals="0" id="ixv-7628" unitRef="usd">7296783</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c98" decimals="0" id="ixv-7629" unitRef="usd">708231</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c99" decimals="0" id="ixv-7630" unitRef="usd">4936292</us-gaap:Revenues>
    <us-gaap:ContractWithCustomerLiability contextRef="c100" decimals="0" id="ixv-7631" unitRef="usd">21018310</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability contextRef="c101" decimals="0" id="ixv-7632" unitRef="usd">9043422</us-gaap:ContractWithCustomerLiability>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c102" decimals="0" id="ixv-7633" unitRef="usd">9043422</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c0" decimals="0" id="ixv-7634" unitRef="usd">3490436</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <esp:ContractTerm contextRef="c0" id="ixv-7635">P1Y</esp:ContractTerm>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c103" decimals="-6" id="ixv-7636" unitRef="usd">138000000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <esp:BacklogPercentageOfRecognitionsYearOne contextRef="c103" decimals="3" id="ixv-7637" unitRef="pure">0.07</esp:BacklogPercentageOfRecognitionsYearOne>
    <esp:BacklogPercentageOfRecognitionsYearTwo contextRef="c103" decimals="3" id="ixv-7638" unitRef="pure">0.359</esp:BacklogPercentageOfRecognitionsYearTwo>
    <esp:BacklogPercentageOfRecognitionsYearThree contextRef="c103" decimals="3" id="ixv-7639" unitRef="pure">0.123</esp:BacklogPercentageOfRecognitionsYearThree>
    <esp:BacklogPercentageOfRecognitions contextRef="c103" decimals="3" id="ixv-7640" unitRef="pure">0.448</esp:BacklogPercentageOfRecognitions>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="c0" id="ixv-6403">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Note 7. Recently Issued Accounting Standards&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Recent Accounting Pronouncements Not Yet Adopted&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;In December 2023, FASB issued ASU 2023-09,&#160;&#x201c;Income
Taxes&#160;(Topic 740):&#160;Improvements to Income Tax Disclosures,&#x201d; to enhance the transparency and decision usefulness of income
tax disclosures. The amendments in ASU 2023-09 provide improvements primarily related to the rate reconciliation and income taxes paid
information included in income tax disclosures. The Company would be required to disclose additional information regarding reconciling
items equal to or greater than five percent of the amount computed by multiplying pretax income (loss) by the applicable statutory tax
rate. Additionally, the Company would be required to disclose income taxes paid (net of refunds received) disaggregated by individual jurisdictions,
when the taxes paid in an individual jurisdiction is equal to or greater than five percent of the Company&#x2019;s total income taxes paid
(net of refunds received). The amendments in ASU 2023-09 are effective for the annual period beginning July
1, 2025. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. The
Company will evaluate the impact of ASU 2023-09 on its financial statements.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;In November 2023, the FASB issued ASU 2023-07,&#160;&#x201c;Segment
Reporting (Topic 280): Improvements to Reportable Segment Disclosures,&#x201d; which provides updates to qualitative and quantitative reportable
segment disclosure requirements, including enhanced disclosures about significant segment expenses and increased interim disclosure requirements,
among others. The amendments in ASU 2023-07 are effective for fiscal years beginning after December 15, 2023, and interim periods within
fiscal years beginning after December 15, 2024. Early adoption is permitted, and the amendments should be applied retrospectively. The
adoption of ASU 2023-07 is not expected to have a significant impact on the financial statements. The Company is currently evaluating
the impact of this new guidance on its financial statements.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;In November 2024, the FASB issued ASU 2024-03,
&#x201c;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation Disclosures (Subtopic 220-40)&#x201d; with the
goal of improving disclosures about a public business entity&#x2019;s expenses and address requests from investors for more detailed information
about the types of expenses in captions that are commonly presented on the face of the financial statements such as cost of sales, SG&amp;amp;A,
and research and development. These amendments are effective for annual reporting periods beginning after December 15, 2026 and interim
reporting periods beginning after December 15, 2027. Early adoption is permitted and should be applied either prospectively to financial
statements issued for reporting periods after the effect date of the updates or retrospectively to any or all prior periods presented
in the financial statements. The Company will evaluate the impact of this guidance on its financial statements.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;Recent Accounting Pronouncements Adopted&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;None&lt;/p&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <esp:EmployeeStockOwnershipPlanTextBlock contextRef="c0" id="ixv-6433">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"&gt;Note 8. Employee
Stock Ownership Plan&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in; text-align: justify; text-indent: -0.75in"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company sponsors a leveraged employee
stock ownership plan (the "ESOP") that covers all nonunion employees who work 1,000 or more hours per year and are
employed on June 30. The Company makes annual contributions to the ESOP equal to the ESOP's debt service less dividends on
unallocated shares received by the ESOP. All dividends on unallocated shares received by the ESOP are used to pay debt service.
Dividends on allocated ESOP shares are recorded as a reduction of retained earnings. As the debt is repaid, shares are released and
allocated to active employees, based on the proportion of debt service paid in the year. The Company accounts for its ESOP in
accordance with FASB ASC 718-40 &#x201c;Share-based Payments.&#x201d; Accordingly, the shares purchased by the ESOP are reported as Unearned ESOP
shares in the balance sheet and the statement of changes in stockholders&#x2019; equity. As shares are released or
committed-to-be-released, the Company reports compensation expense equal to the current average market price of the shares, and the
shares become outstanding for earnings-per-share (EPS) computations. ESOP compensation expense was $149,036 and $128,300 for the
three-month periods ended March 31, 2025 and 2024, respectively. ESOP compensation expense was $435,298 and $311,664 for the
nine-month periods ended March 31, 2025 and 2024, respectively.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in"&gt;The ESOP shares as of March
31, 2025 and 2024 were as follows:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2024&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 70%; text-indent: 0in"&gt;Allocated shares&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;383,812&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;428,974&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;Committed-to-be-released shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;16,253&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;16,619&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Unreleased shares&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;195,234&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;217,026&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total shares held by the ESOP&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;595,299&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;662,619&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Fair value of unreleased shares&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;5,296,698&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;5,479,907&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 1in; text-indent: -1in"&gt;&lt;span style="text-underline-style: double"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The Company may at times be required to repurchase
shares at the ESOP participants&#x2019; request at the shares&#x2019; fair market value. During the three and nine months ended March 31,
2025 and 2024, the Company did not repurchase shares previously held by the ESOP.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;The ESOP allows for eligible participants to
take whole share distributions from the Plan on specific dates in accordance with the provision of the Plan. Share distributions from
the ESOP during the nine months ended March 31, 2025 and 2024 totaled 67,320 and 55,985 shares, respectively.&lt;/p&gt;</esp:EmployeeStockOwnershipPlanTextBlock>
    <esp:EmployeeStockOwnershipPlanHoursWorked contextRef="c104" decimals="0" id="ixv-7641" unitRef="pure">1000</esp:EmployeeStockOwnershipPlanHoursWorked>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c105" decimals="0" id="ixv-7642" unitRef="usd">149036</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c106" decimals="0" id="ixv-7643" unitRef="usd">128300</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c107" decimals="0" id="ixv-7644" unitRef="usd">435298</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c108" decimals="0" id="ixv-7645" unitRef="usd">311664</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock contextRef="c0" id="ixv-6438">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in"&gt;The ESOP shares as of March
31, 2025 and 2024 were as follows:&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in"&gt;&#160;&lt;/p&gt;

&lt;table cellpadding="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; border-spacing: 0px;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;March 31, 2024&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 70%; text-indent: 0in"&gt;Allocated shares&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;383,812&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;428,974&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td&gt;Committed-to-be-released shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;16,253&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;16,619&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Unreleased shares&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;195,234&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;217,026&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total shares held by the ESOP&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;595,299&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;662,619&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Fair value of unreleased shares&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;5,296,698&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;5,479,907&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7646"
      unitRef="shares">383812</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares
      contextRef="c54"
      decimals="INF"
      id="ixv-7647"
      unitRef="shares">428974</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7648"
      unitRef="shares">16253</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares
      contextRef="c54"
      decimals="INF"
      id="ixv-7649"
      unitRef="shares">16619</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7650"
      unitRef="shares">195234</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares
      contextRef="c54"
      decimals="INF"
      id="ixv-7651"
      unitRef="shares">217026</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP
      contextRef="c2"
      decimals="INF"
      id="ixv-7652"
      unitRef="shares">595299</us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP>
    <us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP
      contextRef="c54"
      decimals="INF"
      id="ixv-7653"
      unitRef="shares">662619</us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP>
    <us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue contextRef="c2" decimals="0" id="ixv-7654" unitRef="usd">5296698</us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue>
    <us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue contextRef="c54" decimals="0" id="ixv-7655" unitRef="usd">5479907</us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="c107"
      decimals="0"
      id="ixv-7656"
      unitRef="shares">67320</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="c108"
      decimals="0"
      id="ixv-7657"
      unitRef="shares">55985</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <ecd:Rule10b51ArrTrmntdFlag contextRef="c4" id="ixv-7658">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:Rule10b51ArrAdoptedFlag contextRef="c4" id="ixv-7659">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrTrmntdFlag contextRef="c4" id="ixv-7660">false</ecd:NonRule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrAdoptedFlag contextRef="c4" id="ixv-7661">false</ecd:NonRule10b51ArrAdoptedFlag>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="c3"
      id="hidden-fact-0"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c2"
      id="hidden-fact-1"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c3"
      id="hidden-fact-2"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c2"
      decimals="2"
      id="hidden-fact-3"
      unitRef="usdPershares">0.33</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c3"
      decimals="2"
      id="hidden-fact-4"
      unitRef="usdPershares">0.33</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="c0"
      id="hidden-fact-5"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="c0"
      id="hidden-fact-6"
      unitRef="usd"
      xsi:nil="true"/>
    <esp:ProceedsFromGrantAward
      contextRef="c0"
      id="hidden-fact-7"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="c0"
      id="hidden-fact-8"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c67"
      id="hidden-fact-9"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c67"
      id="hidden-fact-10"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:TradingSecuritiesDebtAmortizedCost
      contextRef="c69"
      id="hidden-fact-11"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c69"
      id="hidden-fact-12"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c69"
      id="hidden-fact-13"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="c69"
      id="hidden-fact-14"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c70"
      id="hidden-fact-15"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c70"
      id="hidden-fact-16"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c72"
      id="hidden-fact-17"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="c87"
      id="hidden-fact-18"
      unitRef="usd"
      xsi:nil="true"/>
    <esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm contextRef="c89" id="hidden-fact-19" xsi:nil="true"/>
    <esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm contextRef="c89" id="hidden-fact-20" xsi:nil="true"/>
    <dei:EntityCentralIndexKey contextRef="c0" id="ixv-7685">0000033533</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="c0" id="ixv-7686">false</dei:AmendmentFlag>
    <dei:DocumentFiscalPeriodFocus contextRef="c0" id="ixv-7687">Q3</dei:DocumentFiscalPeriodFocus>
    <dei:CurrentFiscalYearEndDate contextRef="c0" id="ixv-7688">--06-30</dei:CurrentFiscalYearEndDate>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
