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

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
		IRS NUMBER:				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:		25614696

	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-20241231.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Wed Feb 12 03:36:51 UTC 2025 -->
<html xmlns:compsci="http://compsciresources.com" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:dtr="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:esp="http://espey.com/20241231" 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/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:us-types="http://fasb.org/us-types/2024" 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> </title>

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

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

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

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

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



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

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

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

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

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

</div><p style="font: bold 10pt Times New Roman, Times, Serif; text-transform: uppercase; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><ix:nonNumeric contextRef="c0" format="ixt-sec:boolballotbox" name="dei:DocumentQuarterlyReport" id="ixv-6823">&#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: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 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-6824">December 31, 2024</ix:nonNumeric></p><div>

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

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

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

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"> <ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:DocumentTransitionReport" id="ixv-6825">&#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: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><ix:nonNumeric contextRef="c0" name="dei:EntityRegistrantName" id="ixv-6827">ESPEY MFG. &amp; ELECTRONICS CORP.</ix:nonNumeric></p><div>

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

</div><p style="font: 8pt Times New Roman, Times, Serif; margin: 0pt">&#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="font: bold 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="font: normal bold 10pt Times New Roman, Times, Serif; text-transform: uppercase; width: 34%; text-align: center; text-indent: 0in"><ix:nonNumeric contextRef="c0" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="ixv-6828">New York</ix:nonNumeric></td> <td style="font: normal bold 10pt Times New Roman, Times, Serif; width: 33%; text-align: center; text-indent: 0in">Trading Symbol</td> <td style="font: normal bold 10pt Times New Roman, Times, Serif; width: 33%; text-align: center; text-indent: 0in"><ix:nonNumeric contextRef="c0" name="dei:EntityTaxIdentificationNumber" id="ixv-6829">14-1387171</ix:nonNumeric></td></tr> <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="font: normal 10pt Times New Roman, Times, Serif; text-align: center; text-indent: 0in">(State of incorporation)</td> <td style="font: normal 10pt Times New Roman, Times, Serif; text-align: center; text-indent: 0in">ESP</td> <td style="font: normal 10pt Times New Roman, Times, Serif; text-align: center; text-indent: 0in">(I.R.S. Employer's Identification No.)</td></tr> </table><div>
</div><p style="font: 8pt Times New Roman, Times, Serif; margin: 0pt"><b>&#160;</b></p><div>

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

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

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

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

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

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

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

</div><p style="font: 8pt Times New Roman, Times, Serif; margin: 0pt">&#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="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-6836">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-6837">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-6838">NYSE American</ix:nonNumeric></td></tr> </table><div>
</div><p style="font: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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><p style="font: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

</div><table cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; 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-6841">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-6842">&#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-6843">&#9744;</ix:nonNumeric> Emerging growth company</td></tr> </table><div>
</div><p style="font: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">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: 8pt Times New Roman, Times, Serif; margin: 0pt">&#160;</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">At February 10, 2025, there were <ix:nonFraction contextRef="c1" decimals="INF" format="ixt:num-dot-decimal" name="dei:EntityCommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-6845">2,796,758</ix:nonFraction> shares outstanding of the
registrant's Common stock, $.33-1/3 par value.</p><div>

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

</div><!-- Field: Page; Sequence: 1 --><div>
    </div><div style="border-bottom: Black 2pt solid; margin-top: 6pt; margin-bottom: 6pt"><p style="font: 10pt Times New Roman, Times, Serif; 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: 0; text-align: center">ESPEY MFG. &amp; ELECTRONICS CORP.</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 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 style="font: 10pt Times New Roman, Times, Serif">PART I</td>
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif"><a href="#a_001">FINANCIAL INFORMATION</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">PAGE</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.75in">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 0.5in; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 1</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_001">Financial Statements:</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_001">Balance Sheets - December 31, 2024 (Unaudited) and June 30, 2024</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">1</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_002">Statements of Comprehensive Income (Unaudited) - Three and Six Months Ended December 31, 2024 and 2023</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">2</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_003">Statements of Changes in Stockholders&#8217; Equity (Unaudited) &#8211; Three and Six Months Ended December 31, 2024 and 2023</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">3</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_004">Statements of Cash Flows (Unaudited) - Six Months Ended December 31, 2024 and 2023</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">7</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_005">Notes to Financial Statements (Unaudited)</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">8</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 2</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_006">Management's Discussion and Analysis of Financial Condition and Results of Operations</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">15</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 3</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_007">Quantitative and Qualitative Disclosures about Market Risk</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">21</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 4</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_004">Controls and Procedures</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">21</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">PART II</td>
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif"><a href="#a_009">OTHER INFORMATION</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 1</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_009">Legal Proceedings</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 2</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_010">Unregistered Sales of Equity Securities and Use of Proceeds</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 3</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_011">Defaults Upon Senior Securities</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 4</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_012">Mine Safety Disclosures</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 5</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_013">Other Information</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">Item 6</td>
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#a_014">Exhibits</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">22</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif"><a href="#a_015">SIGNATURES</a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">23</td></tr>
  </table><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0.5in 0 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="font: 10pt Times New Roman, Times, Serif; 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">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_001"></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">December 31, 2024 (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">December 31, 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: 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; text-align: left; width: 70%">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-6846">8,027,478</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-6847">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-6848">20,264,567</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-6849">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-6850"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd" id="ixv-6851">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-6852">6,993,840</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-6853">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: 10pt">&#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">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-6854">1,813,168</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-6855">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-6856">689,757</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-6857">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-6858">15,109,021</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-6859">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-6860">17,611,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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryNet" scale="0" unitRef="usd" id="ixv-6861">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: 10pt">&#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-6862">864,449</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-6863">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">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-6864">1,793,934</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-6865">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-6866">55,556,214</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-6867">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: 10pt">&#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">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-6868">4,635,071</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-6869">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-6870">60,191,285</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-6871">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-6872">2,662,701</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-6873">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-6874">502,295</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-6875">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-6876">534,025</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-6877">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-6878">180,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"><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-6879">1,284,491</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-6880">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-6881">837</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-6882">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-6883">9,875,627</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-6884">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-6885">334,146</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-6886">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-6887">15,374,640</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-6888">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-6889">15,374,640</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-6890">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-6891"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" unitRef="shares" id="ixv-6892">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-6893"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesIssued" scale="0" unitRef="shares" id="ixv-6894">3,129,874</ix:nonFraction></ix:nonFraction> shares as of December 31, 2024 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-6895">2,796,758</ix:nonFraction> and <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-6896">2,733,958</ix:nonFraction> shares as of December 31, 2024 and June 30, 2024, respectively (includes <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesHeldInEmployeeTrustShares" scale="0" unitRef="shares" id="ixv-6897">200,652</ix:nonFraction> and <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesHeldInEmployeeTrustShares" scale="0" unitRef="shares" id="ixv-6898">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-6899">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-6900">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-6901">24,851,718</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-6902">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-6903">5,004</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-6904">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-6905">28,232,545</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-6906">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>&#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-6907">54,132,558</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-6908">50,985,053</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></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-6909">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-6910">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; padding-bottom: 1pt">Cost of <ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-6911">333,116</ix:nonFraction> and <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares" id="ixv-6912">395,916</ix:nonFraction> shares of common stock in treasury as of December 31, 2024 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-6913">5,447,820</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-6914">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-6915">44,816,645</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:StockholdersEquity" scale="0" unitRef="usd" id="ixv-6916">41,273,972</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></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-6917">60,191,285</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-6918">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; text-align: right">&#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><!-- Field: Page; Sequence: 3; Options: NewSection --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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_002"></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 Six Months Ended December 31, 2024 and
2023</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="text-align: center; white-space: nowrap">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">Three Months Ended</td><td style="text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">Six Months Ended</td><td style="text-align: center">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; white-space: nowrap">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">December 31,</td><td style="text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center">December 31,</td><td style="text-align: center">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; white-space: nowrap">&#160;</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">2024</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">2023</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">2024</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td><td style="text-align: center; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">2023</td><td style="text-align: center; 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">&#160;</td><td>&#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">&#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="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-6919">13,608,740</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-6920">10,302,541</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-6921">24,051,958</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-6922">18,870,755</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-6923">10,445,028</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-6924">7,159,966</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-6925">18,087,364</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-6926">13,482,803</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-6927">3,163,712</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-6928">3,142,575</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-6929">5,964,594</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-6930">5,387,952</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-6931">1,139,275</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-6932">1,049,690</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-6933">2,220,944</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-6934">2,073,371</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-6935">2,024,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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OperatingIncomeLoss" scale="0" unitRef="usd" id="ixv-6936">2,092,885</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-6937">3,743,650</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-6938">3,314,581</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-6939">260,222</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-6940">161,513</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-6941">527,839</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-6942">308,943</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-6943">8,203</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-6944">5,251</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-6945">18,994</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-6946">19,394</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-6947">268,425</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-6948">166,764</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-6949">546,833</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-6950">328,337</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-6951">2,292,862</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-6952">2,259,649</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-6953">4,290,483</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-6954">3,642,918</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-6955">384,363</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-6956">464,279</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-6957">783,667</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-6958">753,004</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-6959">1,908,499</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-6960">1,795,370</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-6961">3,506,816</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-6962">2,889,914</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 (loss) 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" sign="-" unitRef="usd" id="ixv-6963">9,232</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-6964">3,622</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" sign="-" unitRef="usd" id="ixv-6965">1,540</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:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-6966">5,417</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-6967">1,899,267</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-6968">1,798,992</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-6969">3,505,276</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-6970">2,895,331</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-6971">0.74</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-6972">0.73</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-6973">1.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:EarningsPerShareBasic" scale="0" unitRef="usdPershares" id="ixv-6974">1.17</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-6975">0.71</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-6976">0.72</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-6977">1.32</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-6978">1.16</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-6979">2,583,307</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-6980">2,478,588</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-6981">2,554,622</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-6982">2,474,340</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-6983">2,707,542</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-6984">2,499,210</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-6985">2,653,890</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-6986">2,492,499</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="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-6987">0.25</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:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-6988">0.15</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:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-6989">0.50</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:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares" id="ixv-6990">0.30</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 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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 0pt 112.5pt"></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><div><a id="a_003"></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="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Three Months Ended December 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="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; text-align: right">&#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; text-align: right">&#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; text-align: right">&#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; text-align: right">&#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 September
    30, 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="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-6991">2,744,458</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-6992">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-6993">24,111,147</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-6994">14,236</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-6995">26,969,864</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="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-6996">385,416</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-6997">5,777,389</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-6998">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-6999">42,493,056</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="padding-left: 10pt; 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="c14" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7000">1,908,499</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-7001">1,908,499</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 loss, <br/> net of tax of ($<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" sign="-" unitRef="usd" id="ixv-7002">1,939</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" sign="-" unitRef="usd" id="ixv-7003">9,232</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</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" sign="-" unitRef="usd" id="ixv-7004">9,232</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</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">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-7005">1,899,267</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="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7006">52,300</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-7007">649,030</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="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7008">52,300</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-7009">329,569</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-7010">978,599</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-7011">91,541</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-7012">91,541</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-7013">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-7014">645,818</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-7015">645,818</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 December 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="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7016">2,796,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="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7017">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-7018">24,851,718</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-7019">5,004</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-7020">28,232,545</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="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7021">333,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="c23" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7022">5,447,820</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-7023">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-7024">44,816,645</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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Six Months Ended December 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="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; text-align: right">&#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; text-align: right">&#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; text-align: right">&#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; text-align: right">&#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 June 30, 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="c25" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7025">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="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="c25" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7026">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="c26" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7027">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="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="c27" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7028">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="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="c28" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7029">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="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="c29" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7030">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="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="c29" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7031">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="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="c30" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7032">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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7033">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="white-space: nowrap; 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="padding-left: 10pt; 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="c31" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7034">3,506,816</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7035">3,506,816</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 loss, <br/> net of tax of ($<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" sign="-" unitRef="usd" id="ixv-7036">323</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="c32" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" sign="-" unitRef="usd" id="ixv-7037">1,540</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" sign="-" unitRef="usd" id="ixv-7038">1,540</ix:nonFraction></td><td style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</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">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7039">3,505,276</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="c33" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7040">62,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="c34" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7041">728,257</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="c35" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7042">62,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="c35" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7043">395,168</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7044">1,123,425</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="c34" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7045">193,033</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7046">193,033</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="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7047">0.50</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="c31" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7048">1,279,061</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7049">1,279,061</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 December 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="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7050">2,796,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="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7051">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-7052">24,851,718</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-7053">5,004</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-7054">28,232,545</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="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7055">333,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="c23" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7056">5,447,820</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-7057">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-7058">44,816,645</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: 6 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Three Months Ended December 31, 2023</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">(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 September 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: 7%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c36" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7059">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: 7%; 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-7060">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: 7%; 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-7061">23,373,388</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: 7%; 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" sign="-" unitRef="usd" id="ixv-7062">634</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: 7%; 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-7063">22,591,316</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: 7%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c40" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7064">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: 7%; 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-7065">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: 7%; 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-7066">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: 7%; 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-7067">36,720,282</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="padding-left: 10pt; 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="c43" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7068">1,795,370</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-7069">1,795,370</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="padding-left: 10pt; white-space: nowrap; 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="text-indent: -10pt; font: 9pt Times New Roman, Times, Serif; 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-7070">761</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-7071">3,622</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-7072">3,622</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="text-indent: -10pt; font: 9pt Times New Roman, Times, Serif; 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; 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-7073">1,798,992</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="c45" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7074">75,502</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-7075">75,502</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="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7076">0.15</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-7077">370,947</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-7078">370,947</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: right">&#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: right">&#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 December 31, 2023</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="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7079">2,706,633</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="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7080">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="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7081">23,448,890</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-7082">2,988</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-7083">24,015,739</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="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7084">423,241</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" sign="-" unitRef="usd" id="ixv-7085">6,013,701</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="c51" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7086">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="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7087">38,223,829</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;&#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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Six Months Ended December 31, 2023</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-indent: 4.75in"></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">&#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">&#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">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">&#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">(Loss) 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, 2023</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: 7%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c53" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7088">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="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: 7%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c53" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7089">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: 7%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c54" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7090">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="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: 7%; 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" sign="-" unitRef="usd" id="ixv-7091">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="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: 7%; 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-7092">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="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: 7%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c57" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7093">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="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: 7%; 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-7094">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="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: 7%; 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" sign="-" unitRef="usd" id="ixv-7095">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="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: 7%; 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" unitRef="usd" id="ixv-7096">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="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">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="padding-left: 10pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">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="c60" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7097">2,889,914</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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd" id="ixv-7098">2,889,914</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 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-7099">1,138</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="c61" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7100">5,417</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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd" id="ixv-7101">5,417</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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd" id="ixv-7102">2,895,331</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="c62" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7103">4,000</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="c63" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7104">34,490</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="c64" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" sign="-" unitRef="shares" id="ixv-7105">4,000</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="c64" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7106">24,990</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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" unitRef="usd" id="ixv-7107">59,480</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="c63" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7108">131,155</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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="0" unitRef="usd" id="ixv-7109">131,155</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">&#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="c6" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares" id="ixv-7110">0.30</ix:nonFraction> per share</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="c60" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7111">741,895</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">&#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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStock" scale="0" unitRef="usd" id="ixv-7112">741,895</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; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; 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; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; 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; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap">&#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="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="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt">Balance as of December 31, 2023</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="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7113">2,706,633</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="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7114">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="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7115">23,448,890</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="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7116">2,988</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="c49" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7117">24,015,739</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="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7118">423,241</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="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7119">6,013,701</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="c51" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd" id="ixv-7120">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="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="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd" id="ixv-7121">38,223,829</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: 4.75in">&#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"></p><div>


</div><!-- Field: Page; Sequence: 8 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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; text-align: center">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; 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">Six Months Ended December 31, 2024 and 2023</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">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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-7122">3,506,816</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-7123">2,889,914</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-7124">193,033</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-7125">131,155</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-7126">219,126</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-7127">233,526</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-7128">286,262</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-7129">183,364</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" unitRef="usd" id="ixv-7130">30,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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" sign="-" unitRef="usd" id="ixv-7131">212,848</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 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" unitRef="usd" id="ixv-7132">150</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">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; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Increase 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" unitRef="usd" id="ixv-7133">358,350</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:IncreaseDecreaseInAccountsReceivable" scale="0" unitRef="usd" id="ixv-7134">205,985</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">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-7135">35,666</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 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-7136">1,632,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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInInventories" scale="0" sign="-" unitRef="usd" id="ixv-7137">2,027,322</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 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" sign="-" unitRef="usd" id="ixv-7138">1,437,468</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:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" sign="-" unitRef="usd" id="ixv-7139">385,089</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) increase 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-7140">1,088,509</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-7141">892,011</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 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-7142">425,868</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-7143">382,530</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 (decrease) 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-7144">22,881</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-7145">163,645</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">Decrease 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-7146">105,744</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-7147">70,093</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 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-7148">526,939</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-7149">436,356</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 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" sign="-" unitRef="usd" id="ixv-7150">56,025</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:IncreasedecreaseInPayrollAndOtherTaxesWithheld" scale="0" sign="-" unitRef="usd" id="ixv-7151">11,786</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 (decrease) 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-7152">832,205</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-7153">457,836</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; 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-7154">113,539</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-7155">229,625</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 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-7156">6,766,541</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-7157">5,939,155</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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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; ">
    <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-7158">1,547,922</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-7159">3,469,630</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">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-7160">968,722</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">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-7161">150</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">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-7162">14,007,475</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-7163">13,410,242</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 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-7164">12,620,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-7165">11,508,438</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 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-7166">2,935,397</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-7167">4,402,562</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">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; ">
    <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-7168">1,279,061</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-7169">741,895</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 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-7170">1,123,425</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-7171">59,480</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 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-7172">155,636</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-7173">682,415</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">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-7174">3,675,508</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-7175">854,178</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; 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-7176">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="c59" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd" id="ixv-7177">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; ">
    <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-7178">8,027,478</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="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd" id="ixv-7179">3,602,933</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">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; background-color: rgb(204,238,255)">
    <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-7180">639,014</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-7181">702,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;</p><div>

</div><!-- Field: Page; Sequence: 9 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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"></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"><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: justify">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock" id="ixv-5090"><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-5097"><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 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">&#9642;</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">&#9642;</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">&#9642;</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 December 31, 2024 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 December 31, 2024 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-7182">The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at December 31, 2024 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">
    <td style="text-decoration: underline">December 31, 2024</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><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><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><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; background-color: rgb(204,238,255)">
    <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="c65" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7183">19,028,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="c65" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7184">19,028,000</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">Municipal bonds</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c66" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7185">1,134,476</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="c66" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7186">5,797</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="c66" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd" id="ixv-7187">3,459</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="c66" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7188">1,136,814</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; 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"><ix:nonFraction contextRef="c67" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7189">95,756</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="c67" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7190">3,997</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"><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"><ix:nonFraction contextRef="c67" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7191">99,753</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 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-7192">20,258,232</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-7193">9,794</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-7194">3,459</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-7195">20,264,567</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="text-decoration: none; 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; ">
    <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; background-color: rgb(204,238,255)">
    <td>Certificates of deposit</td><td>&#160;</td>
    <td style="text-align: left">$</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-7196">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-12">&#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-13">&#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="c68" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7197">17,651,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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="c69" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7198">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="c69" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7199">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="c69" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd" id="ixv-7200">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="c69" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7201">711,570</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; 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"><ix:nonFraction contextRef="c70" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TradingSecuritiesDebtAmortizedCost" scale="0" unitRef="usd" id="ixv-7202">510,288</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="c70" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd" id="ixv-7203">5,773</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"><div style="-sec-ix-hidden: hidden-fact-14">&#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"><ix:nonFraction contextRef="c70" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd" id="ixv-7204">516,061</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 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-7205">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-7206">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-7207">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-7208">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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><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 December 31, 2024, 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-5384"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of December 31, 2024 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">December 31, 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; ">
    <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-7209">18,116,028</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-7210">2,148,539</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-7211">20,264,567</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-7212">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-7213">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-7214">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" escape="true" name="us-gaap:EarningsPerShareTextBlock" id="ixv-5491"><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:fixed-zero" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7215">0</ix:nonFraction> shares of our common stock for the three and six
months ended December 31, 2024 and <ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7216"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares" id="ixv-7217">149,531</ix:nonFraction></ix:nonFraction> shares for the three and six months ended December 31, 2023, 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" escape="true" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="ixv-5496"><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 six month
periods ended December 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">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: right; border-bottom: Black 1pt solid">2023</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-7218">3,506,816</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-7219">2,889,914</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="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7220">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="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7221">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-7222">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-7223">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-7224">29,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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7225">2,523</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-7226">2,767</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-7227">2,830</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-7228">2,554,622</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-7229">2,474,340</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="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7230">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="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares" id="ixv-7231">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-7232">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-7233">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-7234">29,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="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares" id="ixv-7235">2,523</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-7236">2,767</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-7237">2,830</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-7238">99,268</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-7239">18,159</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-7240">2,653,890</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-7241">2,492,499</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_1" escape="true" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="ixv-5721"><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 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 December 31, 2024 and 2023 was $<ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7242">91,541</ix:nonFraction> and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7243">75,502</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 December 31, 2024 and 2023 was $<ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7244">8,362</ix:nonFraction> and $<ix:nonFraction contextRef="c72" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7245">10,290</ix:nonFraction>, respectively. The deferred tax benefit related to
the NQSOs as of December 31, 2024 and 2023 was approximately $<ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7246">1,756</ix:nonFraction> and $<ix:nonFraction contextRef="c72" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7247">2,161</ix:nonFraction>, respectively. Total stock-based compensation expense recognized
in the statements of comprehensive income for the six-month periods ended December 31, 2024 and 2023 was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7248">193,033</ix:nonFraction> and $<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7249">131,155</ix:nonFraction>, respectively,
before income taxes. The amount of this stock-based compensation expense related to NQSOs for the six-month periods ended December 31,
2024 and 2023 was $<ix:nonFraction contextRef="c73" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7250">15,421</ix:nonFraction> and $<ix:nonFraction contextRef="c74" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd" id="ixv-7251">18,545</ix:nonFraction>, respectively. The deferred tax benefit related to the NQSOs as of December 31, 2024 and 2023 was
approximately $<ix:nonFraction contextRef="c73" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7252">3,238</ix:nonFraction> and $<ix:nonFraction contextRef="c74" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredOtherTaxExpenseBenefit" scale="0" unitRef="usd" id="ixv-7253">3,894</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 December 31, 2024, there was $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd" id="ixv-7254">423,041</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-7255">1.75</ix:nonNumeric> years, of
which $<ix:nonFraction contextRef="c75" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd" id="ixv-7256">385,833</ix:nonFraction> relates to ISOs and $<ix:nonFraction contextRef="c76" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd" id="ixv-7257">37,208</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-7258">7,814</ix:nonFraction>.</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 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="c77" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" scale="0" unitRef="shares" id="ixv-7259">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="c78" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" scale="0" unitRef="shares" id="ixv-7260">13,300</ix:nonFraction> and <ix:nonNumeric contextRef="c78" name="esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" id="ixv-7261">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="c79" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease" scale="0" unitRef="shares" id="ixv-7262">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-7263">two</ix:nonNumeric>-year vesting period based on <ix:nonNumeric contextRef="c80" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="ixv-7264">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="c81" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="0" unitRef="shares" id="ixv-7266">400,000</ix:nonFraction> shares are authorized for issuance under the 2017 Plan. As of December
31, 2024, options covering <ix:nonFraction contextRef="c82" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7267">87,375</ix:nonFraction> shares have been exercised and options covering <ix:nonFraction contextRef="c83" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares" id="ixv-7268">307,656</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-7269">4,969</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 December 31, 2024, <ix:nonFraction contextRef="c84" decimals="INF" format="ixt:num-dot-decimal" name="esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" scale="0" unitRef="shares" id="ixv-7270">27,600</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" continuedAt="_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="ixv-5735"><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 six months ended December 31, 2024 and 2023.</p></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: 12 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 id="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_1"><ix:continuation id="_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-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 style="padding-bottom: 1pt">&#160;</td> <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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">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-7271">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-7272">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: justify">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-7273">33.33</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-7274">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: justify">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-7275">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-7276">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: justify">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-7277">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-7278">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 style="text-align: justify">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-7279">5.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="c6" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares" id="ixv-7280">4.03</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr> </table></ix:continuation>

<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 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-7281">0.50</ix:nonFraction> per share for the six months ended December 31, 2024 and paid $<ix:nonFraction contextRef="c6" decimals="2" format="ixt:num-dot-decimal" name="esp:DividendPayableAmountPerShare" scale="0" unitRef="usdPershares" id="ixv-7282">0.30</ix:nonFraction> cash dividends for the six months ended December 31,
2023. 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-5814"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following table summarizes stock option activity
during the six months ended December 31, 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; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">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%; padding-bottom: 1pt">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="c85" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares" id="ixv-7283">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="c85" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7284">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="c86" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="ixv-7285">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-15">&#160;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1pt">Granted</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c87" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" unitRef="shares" id="ixv-7286">76,500</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="c87" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7287">21.58</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="c87" format="ixt-sec:duryear" name="esp:WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted" id="ixv-7288">9.52</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 style="padding-bottom: 1pt">Exercised</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c87" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" unitRef="shares" id="ixv-7289">62,800</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="c87" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7290">17.89</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-16">&#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="c87" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" unitRef="shares" id="ixv-7291">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="c87" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7292">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-17">&#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 December 31, 2024</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="c88" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares" id="ixv-7293">335,256</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="c88" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7294">19.23</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="c87" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="ixv-7295">6.95</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="c88" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="0" unitRef="usd" id="ixv-7296">3,661,427</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 December 31, 2024</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="c88" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" scale="0" unitRef="shares" id="ixv-7297">320,083</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="c88" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7298">19.19</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="c87" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" id="ixv-7299">6.84</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="c88" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" scale="0" unitRef="usd" id="ixv-7300">3,507,361</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 December 31, 2024</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="c88" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" unitRef="shares" id="ixv-7301">180,356</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="c88" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" unitRef="usdPershares" id="ixv-7302">19.26</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="c87" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="ixv-7303">5.09</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="c88" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="0" unitRef="usd" id="ixv-7304">1,964,248</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 December 31, 2024 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 December 31, 2024. This amount changes based on the
fair market value of the Company&#8217;s common stock. The intrinsic value of options exercised during the six months ended December 31,
2024 and 2023 was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" unitRef="usd" id="ixv-7305">668,878</ix:nonFraction> and $<ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" unitRef="usd" id="ixv-7306">9,482</ix:nonFraction>, respectively.</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:ScheduleOfNonvestedShareActivityTableTextBlock" id="ixv-6004"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The following table summarizes changes in non-vested stock options
during the six months ended December 31, 2024:</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-7307">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-7308">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-7309">76,500</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-7310">5.40</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-7311">68,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-7312">4.11</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-7313">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-7314">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 December 31, 2024</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-7315">154,900</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-7316">4.78</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; 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">&#160;</p><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_CommitmentsAndContingenciesDisclosureTextBlock-c0_cont_1" escape="true" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="ixv-6085"><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-7317"><ix:nonFraction contextRef="c59" decimals="0" format="ixt:fixed-zero" name="us-gaap:LettersOfCreditOutstandingAmount" scale="0" unitRef="usd" id="ixv-7318">zero</ix:nonFraction></ix:nonFraction> at December 31, 2024 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, also 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></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: 13 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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:continuation id="_CommitmentsAndContingenciesDisclosureTextBlock-c0_cont_1"><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="c59" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:CustomerFunds" scale="6" unitRef="usd" id="ixv-7319">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, with completion slated for the first quarter of calendar
year 2025. 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 will record the receipt of milestone payments received as a
reduction from the cost of the assets. The Company will have 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 December 31, 2024, 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-7320">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-7321">4,228,722</ix:nonFraction>. Included in property, plant, and equipment at December 31, 2024 was $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd" id="ixv-7322">2,311,788</ix:nonFraction>
not yet reimbursed for facility and capital upgrades under the funding award, compared to $<ix:nonFraction contextRef="c59" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd" id="ixv-7323">965,392</ix:nonFraction> in spending not yet reimbursed included
in property, plant, and equipment at June 30, 2024. Included in accounts payable at December 31, 2024 was approximately $<ix:nonFraction contextRef="c2" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrentAndNoncurrent" scale="0" unitRef="usd" id="ixv-7324">11,770</ix:nonFraction> for facility
and capital upgrades eligible to be reimbursed under the funding award compared to $<ix:nonFraction contextRef="c59" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrentAndNoncurrent" scale="0" unitRef="usd" id="ixv-7325">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 December 31, 2024 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-7326">561,852</ix:nonFraction> and $<ix:nonFraction contextRef="c59" decimals="0" format="ixt:num-dot-decimal" name="esp:TerminationWithdrawalObligation" scale="0" unitRef="usd" id="ixv-7327">772,157</ix:nonFraction>, respectively, shown within the accounts payable
balance on the Company&#8217;s balance sheets. The remaining liability of $<ix:nonFraction contextRef="c59" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:FinanceLeaseLiability" scale="0" unitRef="usd" id="ixv-7328">561,852</ix:nonFraction> is expected to be paid in the second half of fiscal
2025. As the Company was the only remaining contributing employer to the multiemployer pension plan, its withdrawal constitutes a mass
withdrawal termination. Final withdrawal calculations are contingent upon the availability of January 1, 2025 assets and the finalization
of December 31, 2024 liabilities as the withdrawal liability will need to be re-determined based on a December 31, 2024 measurement date.
The Company does not expect future adjustments to the established liability to have a material impact on the Company&#8217;s financial
statements. The cost of the withdrawal liability obligation is recorded in indirect overhead product costs, capitalized in inventory and
expensed through cost of sales based on shipments.</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="c2" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:CustomerFunds" scale="6" unitRef="usd" id="ixv-7329">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. There are currently
no expenditures or amounts that are considered reimbursable under this grant.</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" continuedAt="_RevenueFromContractWithCustomerTextBlock-c0_cont_1" escape="true" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="ixv-6113"><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></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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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:continuation id="_RevenueFromContractWithCustomerTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Total revenue recognized for the three and six
months ended December 31, 2024 based on units delivered was $<ix:nonFraction contextRef="c89" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7330">9,237,688</ix:nonFraction> and $<ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7331">17,500,184</ix:nonFraction>, respectively, compared to $<ix:nonFraction contextRef="c91" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7332">8,237,156</ix:nonFraction> and $<ix:nonFraction contextRef="c92" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7333">14,642,694</ix:nonFraction>
for the same period in fiscal year 2024. Total revenue recognized for the three and six months ended December 31, 2024 based on milestones
achieved was $<ix:nonFraction contextRef="c93" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7334">4,371,052</ix:nonFraction> and $<ix:nonFraction contextRef="c94" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7335">6,551,774</ix:nonFraction>, respectively, compared to $<ix:nonFraction contextRef="c95" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7336">2,065,385</ix:nonFraction> and $<ix:nonFraction contextRef="c96" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd" id="ixv-7337">4,228,061</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 December 31, 2024. 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="c97" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd" id="ixv-7338">9,875,627</ix:nonFraction> and $<ix:nonFraction contextRef="c98" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd" id="ixv-7339">9,043,422</ix:nonFraction>
as of December 31, 2024 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. Revenue recognized that was in contract liabilities in the beginning
of the fiscal year was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" unitRef="usd" id="ixv-7340">2,377,108</ix:nonFraction> for the six months ended December 31, 2024. 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-7341">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 December 31, 2024
totaling approximately $<ix:nonFraction contextRef="c99" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="6" unitRef="usd" id="ixv-7342">120.1</ix:nonFraction> million is currently estimated to be recognized in the following fiscal years: <ix:nonFraction contextRef="c99" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearOne" scale="-2" unitRef="pure" id="ixv-7343">16.6</ix:nonFraction>% in 2025; <ix:nonFraction contextRef="c99" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearTwo" scale="-2" unitRef="pure" id="ixv-7344">37.4</ix:nonFraction>% in 2026;
<ix:nonFraction contextRef="c99" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearThree" scale="-2" unitRef="pure" id="ixv-7345">7.6</ix:nonFraction>% in 2027, and <ix:nonFraction contextRef="c99" decimals="3" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitions" scale="-2" unitRef="pure" id="ixv-7346">38.4</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: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="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="ixv-6143"><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. Similarly, the Company would be required to disclose income taxes paid (net of refunds received) equal to or greater than five percent
of 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">&#160;</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">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: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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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:nonNumeric contextRef="c0" escape="true" name="esp:EmployeeStockOwnershipPlanTextBlock" id="ixv-6168"><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="c100" decimals="0" format="ixt:num-dot-decimal" name="esp:EmployeeStockOwnershipPlanHoursWorked" scale="0" unitRef="pure" id="ixv-7347">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. Accordingly,
the shares purchased by the ESOP are reported as Unearned ESOP shares in the balance sheets and the statements 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="c101" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7348">163,067</ix:nonFraction>
and $<ix:nonFraction contextRef="c102" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7349">94,175</ix:nonFraction> for the three-month periods ended December 31, 2024 and 2023, respectively. ESOP compensation expense was $<ix:nonFraction contextRef="c103" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7350">286,262</ix:nonFraction> and $<ix:nonFraction contextRef="c104" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd" id="ixv-7351">183,364</ix:nonFraction>
for the six-month periods ended December 31, 2024 and 2023, 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-6173"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0in">The ESOP shares as of December
31, 2024 and 2023 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">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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; 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-7352">385,641</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="c52" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" scale="0" unitRef="shares" id="ixv-7353">440,801</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: justify">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-7354">10,835</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="c52" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares" scale="0" unitRef="shares" id="ixv-7355">11,080</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: justify; 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-7356">200,652</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="c52" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" scale="0" unitRef="shares" id="ixv-7357">222,565</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: justify; 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-7358">597,128</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="c52" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP" scale="0" unitRef="shares" id="ixv-7359">674,446</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-7360">6,049,658</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="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" scale="0" unitRef="usd" id="ixv-7361">4,161,966</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">&#160;</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 six months ended December
31, 2024 and 2023, 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 six months ended December 31, 2024 and 2023 totaled <ix:nonFraction contextRef="c103" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan" scale="0" unitRef="shares" id="ixv-7362">65,491</ix:nonFraction> and <ix:nonFraction contextRef="c104" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan" scale="0" unitRef="shares" id="ixv-7363">44,157</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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p><div>

</div><div><a id="a_006"></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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 December 31, 2024 was approximately
$120.1 million, which included $78.3 million from three significant customers, compared to approximately $84.8 million at December 31,
2023, which included $57.4 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 December
31, 2024 is fully funded, except for approximately $20.4 million, representing two 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 in fiscal year 2025
to be higher than revenues recognized during fiscal year 2024 but expects that net income per share will be lower than fiscal year 2024
net income per share, although greater than fiscal year 2023 net income per share. This expectation is driven primarily by orders already
in our backlog that will be shipped in fiscal year 2025 with higher anticipated aggregate costs than the product mix shipped during 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 in effect and the newly inaugurated President has announced the imposition of additional tariffs. Although
we are not currently experiencing any significant financial or raw material sourcing issues resulting from the product tariffs, the
Company cannot provide any assurance that the existing and newly-imposed tariffs, the potential of additional tariffs, and the
associated volatility arising from foreign trade policies, will not have a negative impact on our future earnings by increasing our
raw material prices and augmenting the lead time for the availability of raw materials.</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
$9.6 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
$19.9 million of orders comprising the December 31, 2024 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 $19.9 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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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">The Company currently expects new orders in fiscal
year 2025 to be greater than those received in fiscal year 2024. New orders received in the first six months of fiscal year 2025 were
approximately $46.9 million as compared to approximately $20.1 million new orders received in the first six months of fiscal year 2024.
Included in new orders received during the current fiscal year is an award for $29.5 million, when fully funded, to provide electric power
distribution panels for the U.S. Navy&#8217;s Columbia class submarines through calendar year 2030. In addition to the backlog and the
new orders already booked in fiscal year 2025, the Company currently has outstanding opportunities representing approximately $113 million
in the aggregate as of February 4, 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 four significant customers represented 62% of the Company&#8217;s total sales for the three-month period ended December 31,
2024. Net sales to five significant customers represented approximately 86% of the Company&#8217;s total sales for the three-month period
ended December 31, 2023. Net sales to five significant customers represented approximately 69% of the Company&#8217;s total sales for
the six-month period ended December 31, 2024. Net sales to five significant customers represented 82% of the Company&#8217;s total sales
for the six-month period ended December 31, 2023. 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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 December 31, 2024 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 December
31, 2024 and 2023 were $13,608,740 and $10,302,541, respectively, a 32.1% increase. Net sales for the six months ended December 31, 2024
and 2023 were $24,051,958 and $18,870,755, respectively, a 27.5% 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 December 31, 2024,
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 primarily related to product supporting
magnetics, power supply, and build to print contracts. During the current quarter, sales increased on deliveries for (i) a large follow-on
order for power distribution panels, (ii) a large follow-on order for inverters used on armored multi-purpose vehicles, and (iii) numerous
deliveries on build to print follow-on orders in which there were no sales in the comparable period last year. These increases were offset,
in part, by a decrease in deliveries for (i) a contract for power supplies supporting the AESA radar program and (ii) fewer sales on
an engineering development job which had fewer sales when compared to the same period last year.</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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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">For the six months ended December 31, 2024,
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 primarily related to product
supporting power supply, magnetics, and build to print contracts. For the six months ended December 31, 2024, sales increased on
deliveries for (i) a large follow-on order for power distribution panels, (ii) a large follow-on order for inverters used on armored
multi-purpose vehicles, (iii) deliveries on several follow-on orders for power supplies and overall build to print contracts, (iv)
shipments on a large multi-year magnetics contract for transformers, and (v) sales on a new engineering development contract in
which there were no comparable sales in the prior period. These increases were offset, in part, by a decrease in sales related to a
family of power distribution transformers for a single customer.</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 for the three months ended December
31, 2024 and 2023 were $3,163,712 and $3,142,575, respectively. Gross profit as a percentage of sales was approximately 23.2% and 30.5%,
for the same periods, respectively. Gross profits for the six months ended December 31, 2024 and 2023 were $5,964,594 and $5,387,952,
respectively. Gross profit as a percentage of sales was approximately 24.8% and 28.6% <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 remained flat for the three months
ended December 31, 2024 when compared to the same period last year and increased for the six months ended December 31, 2024 when compared
to the same period last year. The decrease in the gross margin percentages for the three and six months ended December 31, 2024 when compared
to the same period last year primarily resulted from (i) product mix, specifically impacted by shipments on a large magnetics program
with lower gross margins, which management remains optimistic will improve as we work to achieve production efficiencies in the current
build process on this internally designed product which has only had a limited number of completed production builds to date, (ii) higher
than average profit margins on one-time sales to certain customers in the prior year, (iii) increased costs incurred with restarting a
production line for a large power supply contract which is expected to generate future additional re-order opportunities, and (iv) costs
incurred on a specific engineering development program.</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 and 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,139,275 for the three months ended December 31, 2024, an increase of $89,585, compared to the three months ended December 31, 2023.
Selling, general and administrative expenses were $2,220,944 for the six months ended December 31, 2024, an increase of $147,573 compared
to the six months ended December 31, 2023. The increase in spending for the three months ended December 31, 2024 as compared to the same
period in 2023 relates mainly to the increase in employee compensation costs, outside selling costs related to non-employee sales representatives,
an increase in travel expenditures, an increase in outbound freight costs related to higher sales, offset in part, by a decrease in conference
expenses incurred during the period. The increase in spending for the six months ended December 31, 2024 as compared to the same period
in 2023 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 travel expenditures, offset in part, by a decrease in
conference expenses and general office supplies.</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 December
31, 2024 and 2023 was $268,425 and $166,764, respectively. Other income for the six months ended December 31, 2024 and 2023 was $546,833
and $328,337, respectively. The increase for the three and six months ended December 31, 2024 is primarily due to the increase in interest
income resulting from an increase in investment securities, offset in part, by declining interest rates. 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 six months ended December 31, 2024 was approximately 16.8% and 18.3% respectively, compared to 20.5% and 20.7% for the three
and six months ended December 31, 2023. 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 in the three and six month period ended December 31, 2024 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 same period in the prior year.</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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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">Net income for the three months ended December
31, 2024 was $1,908,499 or $0.74 and $0.71 per share, basic and diluted, compared to net income of $1,795,370 or $0.73 and $0.72 per
share, basic and diluted, for the three months ended December 31, 2023. Net income for the six months ended December 31, 2024 was $3,506,816
or $1.37 and $1.32 per share, basic and diluted, compared to $2,889,914 or $1.17 and $1.16 per share, basic and diluted, for the six
months ended December 31, 2023. The increase in net income in the three months ended December 31, 2024 when compared to the same period
last year resulted primarily from the increase in interest income and lower provision for income taxes. The increase in net income in
the six months ended December 31, 2024 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><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, and during the past two fiscal years, the Company, when possible, 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 available a $3,000,000 line of credit to help fund further growth or working
capital needs, if necessary, 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 December 31, 2024 and 2023. The existing line of credit expires
February 28, 2025. Management anticipates that the line of credit will be renewed.</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 December 31,
2024 and 2023 was approximately $40.2 million and approximately $33.1 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 six months ended December 31, 2024 and 2023,
the Company did not repurchase any shares held by the ESOP. Under an existing authorization from the Company's Board of Directors, as
of December 31, 2024, 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">Six Months Ended December 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">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: right; border-bottom: Black 1pt solid">2023</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">6,766,541</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">5,939,155</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">(2,935,397</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">(4,402,562</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">(155,636</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">(682,415</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, the decrease
in prepaid expenses and other current assets, offset in part by a decrease in accounts payable. Net cash used in investing activities
decreased in the six months ended December 31, 2024 as compared to the same period in 2023 due to fewer additions to property, plant and
equipment and higher investment securities when compared to the same period last year. Cash used in financing activities for the six months
ended December 31, 2024 relates primarily to dividend payments on common stock, offset in part, by proceeds from the exercise of stock
options. Comparably, the dividends paid during the prior year were lower and cash received from stock option exercises in the prior year
was significantly lower. 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><!-- Field: Page; Sequence: 22 --><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><p style="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 6.15pt 0pt 0; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">During the six months ended December
31, 2024 and 2023, the Company expended $1,547,922 and $3,469,630, respectively, for plant improvements and new equipment, of which $1,346,396
and $3,292,313, respectively, was either reimbursed or eligible to be reimbursed under a not to exceed $7.4 million award received by
the Company. The award received by the Company is in support of facility and capital equipment upgrades for testing and qualification
for the United States Navy. This funding award is 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 5.85pt 0pt 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; 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_007"></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_008"></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 Chief 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 Chief 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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"></p><div>

</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_009"></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_010"></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 December 31, 2024 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 December 31, 2024 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_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 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 0pt 0.75in">None</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in">&#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 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 0pt 0.75in">Not applicable</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.75in">&#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 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 0pt 0.75in"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:Rule10b51ArrTrmntdFlag" id="ixv-7364"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:Rule10b51ArrAdoptedFlag" id="ixv-7365"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:NonRule10b51ArrTrmntdFlag" id="ixv-7366"><ix:nonNumeric contextRef="c4" format="ixt:fixed-false" name="ecd:NonRule10b51ArrAdoptedFlag" id="ixv-7367">None</ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></p><div>

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

</div><div><a id="a_014"></a></div><table cellpadding="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; border-spacing: 0px;"><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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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"></p><div>

</div><div><a id="a_015"></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">/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">/s/ Katrina Sparano</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Katrina Sparano</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>Principal Financial Officer</td></tr>
  </table><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: February 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="text-align: center; font: 10pt Times New Roman, Times, Serif; 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="c65" id="hidden-fact-9" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c65" id="hidden-fact-10" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c67" id="hidden-fact-11" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c68" id="hidden-fact-12" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c68" id="hidden-fact-13" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c70" id="hidden-fact-14" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c85" id="hidden-fact-15" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonNumeric contextRef="c87" id="hidden-fact-16" name="esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm" xsi:nil="true"></ix:nonNumeric>
<ix:nonNumeric contextRef="c87" id="hidden-fact-17" name="esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm" xsi:nil="true"></ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:EntityCentralIndexKey" id="ixv-7388">0000033533</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:AmendmentFlag" id="ixv-7389">false</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:DocumentFiscalYearFocus" id="ixv-7390">2025</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:DocumentFiscalPeriodFocus" id="ixv-7391">Q2</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:CurrentFiscalYearEndDate" id="ixv-7392">--06-30</ix:nonNumeric>
</ix:hidden>
<ix:references><link:schemaRef xlink:href="esp-20241231.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>2024-12-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-02-10</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>2024-12-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>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2023-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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>2023-12-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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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>2023-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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>2023-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-31</xbrli:instant>
  </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:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-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:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-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:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-12-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">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="c52">
  <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="c53">
  <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="c54">
  <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>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XlbAukUzPWiif7lQDuIc/ciyhUrD0pT5qOG/FlvslgYn7MpKioXZIrJtf9Gyyu87wdGFXtNGmJLzE9zU/gBGYjlTYAz4H8C3oFpFv/4KSwJjR1BwlBPYZ20xQBCtZVUtoz3hNJQNJtWwRYN/6AgoWBHF9yAv/Tg8kl6y/Z0L+i+ss1kM09NfR3y] CSR-->
  <xbrli:period>
    <xbrli:instant>2023-06-30</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:AccumulatedOtherComprehensiveIncomeMember</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>
    <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="c57">
  <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="c58">
  <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="c59">
  <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="c60">
  <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>2023-12-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c61">
  <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>2023-12-31</xbrli:endDate>
  </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:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </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:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </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:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-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:CertificatesOfDepositMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</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:MunicipalBondsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-06-30</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:USTreasuryBillSecuritiesMember</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:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-31</xbrli:endDate>
  </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:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-31</xbrli:endDate>
  </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>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:IncentiveStockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </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:instant>2024-12-31</xbrli:instant>
  </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="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>2024-12-31</xbrli:endDate>
  </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="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>2024-12-31</xbrli:endDate>
  </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: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>2024-12-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="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>2024-12-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="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>2024-12-31</xbrli:instant>
  </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>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-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">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>2024-12-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:StockOptionMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-07-01</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">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="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:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2024-12-31</xbrli:endDate>
  </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:instant>2024-12-31</xbrli:instant>
  </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="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-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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="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>2024-12-31</xbrli:endDate>
  </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="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-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-31</xbrli:endDate>
  </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>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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:MilestonesAchievedMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-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: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>2024-12-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:MilestonesAchievedMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">esp:ASC606Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2024-12-31</xbrli:instant>
  </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="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="c99">
  <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>2024-12-31</xbrli:instant>
  </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: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="c101">
  <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-10-01</xbrli:startDate>
    <xbrli:endDate>2024-12-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context xmlns="" id="c102">
  <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-10-01</xbrli:startDate>
    <xbrli:endDate>2023-12-31</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:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2024-07-01</xbrli:startDate>
    <xbrli:endDate>2024-12-31</xbrli:endDate>
  </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>2023-07-01</xbrli:startDate>
    <xbrli:endDate>2023-12-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: justify">&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: February 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">/s/ David O&rsquo;Neil</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>David O&rsquo;Neil</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>President and Chief Executive Officer</TD></TR>
</TABLE>

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

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 24 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 -->

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

</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, Katrina Sparano, 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: February 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">/s/ Katrina Sparano</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>Katrina Sparano</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>Principal Financial Officer</TD></TR>
</TABLE>

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

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 25 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="text-align: center; font: 10pt Times New Roman, Times, Serif; 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">&nbsp;</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 December 31, 2024 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="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.5in">Date: February 12, 2025</P>

<P STYLE="margin: 0">&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">/s/ David O&rsquo;Neil</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>David O&rsquo;Neil</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>President and Chief Executive Officer</TD></TR>
</TABLE>

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

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 26 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="text-align: center; font: 10pt Times New Roman, Times, Serif; 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 -->

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

</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"><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 December 31, 2024 as filed with the Securities
and Exchange Commission on the date hereof (the &ldquo;report&rdquo;), I, Katrina Sparano, 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">Date: February 12, 2025</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&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">/s/ Katrina Sparano</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>Katrina Sparano</TD></TR>
<TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>Principal Financial Officer</TD></TR>
</TABLE>

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

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 27 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 2pt solid"><P STYLE="text-align: center; font: 10pt Times New Roman, Times, Serif; 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="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</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" !D 0@# 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@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHI* "BF,VT99@
MJCJ6K.N_$.D6()N=1MX\=MXS0DW\*);2W9J45QMW\4/"UF2#?^8?]A<UCS_&
MG0(\^5!<2?I6RH57]DEU(+J>E45Y2?C?I^?ETN8_\"%(/C=9$_\ (*G ]=PJ
MOJM;^4GVT.YZO17FUM\9M EP)H;B(]^,XKH].\>^'-5VBWU*-7;HLGRG]:F5
M"K'>)2JP>S.FI:C1UD4.C*RGHP.0:DK$T"BBB@ HHHH 0TTDYP*@N[V&RA>:
M>0)&O4FN+O?%5YJ<K0V1^S6X&6E/7%:4Z4I[&<JD8G;F9$)#2H,>IZ57_M>P
M&X&[C^7J<]*\RN;^6X!C6201^I/+>YIENH^QW7'85UK!Z:LYGB>R/5TNH9 &
M29&4],&I0Q)]J\AMKN:UQL=MG=<UNV?B:\TW9*2;BR?H#]Y#Z5G4PKCL7'$*
M6YZ'2U0T[5;;5+=9K=P?5>ZU>KE::T9TII["T444AA1110 4AI:0T %!--+
M=Q61J?B;3=,^1Y3-/VAA&YC32;T0FTMS7)-5[F\ALXC+<W$<*#G+L!7*2ZCX
MOUO*Z;8QZ9 >DUSRY'TJM'\-H;V3S]?U:[U&0G)3>50?A6BIQ7QNWH3S2?PH
M?JGQ6\/:>3#;22W\_9(%SS7/2^./'&ML4T70&MXV^Z\HY_6O1-.\,:)I2J+/
M38(R/XM@)_.M< *N%  ]!6BJ4H?#&_J1R3?Q/[CQE_!?Q"UUMVI:OY"MU16(
MQ^53P?!'S2&O]9ED/< 9_G7K_>C\:'BZG2R^0E0AU/-+?X*>'HP#+-/)^.*N
MK\'_  NHYBF/_ Z[X"C%1]8K?S%>RI]CSZ3X/^%V&52=?HU9UU\%=(<$VU_<
M1-VSSBO4N/2DP/2FL7B(OXA.C3?0\+U/X-ZS;HS6-U#=*.BMP37":GHNHZ)<
M>7J-E);2= V.#^-?5_ JIJ.EV6K6K6U];QS1L,889Q]*ZJ>8U+VGJ93PL7\)
M\W:%XSUWP],KVEXTL7\4,IRI^E>Y^#O'%EXMM#Y9\F]C'[V!CR/<5XOX\\(G
MPGK"I$2]C<9:$G^'VK-\(W\^E^*].N+=RI:4(X]0>U=U;#PQ%+VD-#"G5E"?
M(SZE%% .1FBOGT>D&:BFN$MXGED("(,DFI:Y'QMJ!BMDL8VP9N7QUQ5TXN<D
MD1.7+&Y@ZQJPU^=@7,00_N@?NM]:I74$UI;);E#E_FD91G-5[9!)<QIV!S^5
M/>\G\^1TD(!/0\@"O9C'DTB>:Y<VK*V[_)JS;D?9+KZ"E^VN1\T4;?458AN4
M-K<G[-&" .E7)B2,S<,8Z5=L-SR-"8V,<HQTZ'L::+T@?+;Q+[XICWEPP^_M
MQSA>*&)63+^GSOH%T;EY/F4X:!3G/UKT"RUNPO;6.=+N ;QDJ7&17EVKG-M+
M..3) 23[XKP43W"%@MS.!N/20^M>=BTE9G;A[L^T_P"T;+_G[@_[^"E74+1V
M"K=0ECT <$FOBLWDRMM-W/G_ *Z&MKP7=RGQOI -U.09QD%R<UQ'78^P=U4K
M[6=-TS'VZ^M[?/:1P#7(?%+QR?!NAC[* VHW1V0#^Z.[5\QWU_>ZI<O<7]U+
M<2N<EG8GGV% C[!MO%>@7;[(-7M';T$@K5\P-%OC(<8R,'@U\2M;3P1B5K>X
MB0]'*D#\Z]F^!9UZ_O;NXEU"=M(@78(Y#D,WL: /7;R W# 7]^MO$W2-6"D_
MC3K.VT*PYMVM5?NY<%C^->/_ +0$DL>H:/Y<TD>4.=C$=Z\=^T71Z7-R2>PD
M)-.[V#E6Y]G_ &ZR/'VR'_OX*L!U(!0A@>X/%?$_VFZ4C-S<J>VYV%=/X5^(
MFN^%+^*1;R6YL21YL$K9X[XI!8^KWE2)2\CJB#JS' J/^T;+_G[@_P"_@K@O
MB#K%OK/PBN-4L)2(IT5U93@CVKYI2YN2B_Z5<=/^>A_QH"Q]I_VC9?\ /W!_
MW\%(=1LLX^UP?]_!7Q9]LG!YN[C_ +^&NO\ AQI"^+-<O-*GO)]SVS-"WF'Y
M7 X[T ?4AU&R'6[@'_;05.DBR1AT8.IZ%3D&OC'4K;4M(U*XTV]GN$G@8JX,
MAY]Z]>^"_CQA(?#&ISDG[UI*YS_P'- SW$OCK5?^T+/)'VN#(Z_.*X/XL^-Q
MX6\/M9VK@ZG>@I&,\HIZFOFL7%VS*BW5R\K, ,2'+$]J /M*.[MYVV13Q2-Z
M(P-2MG%>??"OP5)X8T7[;J$DDFHW:AG#N3Y:]A76Z]XBT[P[IKWM_,$4#Y4_
MB<^@%*SD^6/46BU/./C;<P_9M-M,CSRY<>H%<=\.O#LWB#Q/!/M(L[-M[MC@
MGTK4@\/:]\3=?;5;V-K/3F.$9^H3T KV?1- L?#^G1V-A$(XE')QRQ]37K2Q
M"P]'V*W.%4W.IS&H!1117DH[A!7F7BF<S^()LG(3Y5KT[O7F6O0PS:Y=!'$4
MV[H_0UV82WM&<V)^$S['B25_[J$U5'2K]M:S1+/E"1LZCFJ R!@@C\*]2Z.&
MUD+5F#_CTNOH*JY%6K?_ (]+KZ"AM BL.E%(",4H//0G\*9(_4.= 9O[J.*\
M#;J_U->_W4,K^'I=J,>&/-> '[S_ .\?YUYF,UL=^&V9]"?"G1_#EUX$M9=1
MM[%[@L=S2E=WZUW5MH7A6.YCDM;33_/4Y0IMW9]J^0A/(@VK<2HOHK$ 5UWP
MQN)6^(NEH;B9E+'(9C@UQ'6=-\>I9&\86,;$[%M\KGZUP7A*\TW3_%>GW>L0
M^9812 NN,@>Y%?0'Q5\ 2^,;"*YT\JNI6F=BMTD7TKYUU/1-6T:9HM2TZ>W9
M3@ED)% 'UA:77A?Q'8&.V;3[J!UQL 7I]*N:'H&G^'-/^P:;"(8-Q<+[FOC>
MVN9K:02V=Q- X_BC<KS7L7PP^*E^^I0:!K\QG2;Y8+D_>#>AH 7]H/']H:-Z
M[&_G7!_#:*.?XB:5%+&LD;/RK#(-=Y^T'Q?Z/_NMS7E.B:Q<>']9MM5M IG@
M.5##B@#ZE\5^$=#U70;V.;3[="D199$0*5('J*^2F4*73=G#%<^N#7=Z[\7/
M%.NZ>]C+)#;PRKAS$N"17#*CNZQ0*9))#A$49))H ]9T>9Y?V>-11R2L<VU<
M]AFO(T^[&/<5[UJ7AV7PS\ )K.X&)W422#T)/2O!D^XOT% 'U9H>A^$Y- T]
MIK333(T"%BVW)..:VM-TCP_9W+2Z7;64<^,%H,9Q^%?'GVJ5>ES.,=@QKUKX
M 3/+XAU0--*ZB(8WDG^= '3_ !D\"G5M._X2#3HA]MM1^^51_K$KP"VN'MKF
M"Y@=HY87#H1U4BOMAE#J5(#(PP0>A%?+?Q6\*0>%O%Y^R$"VO09DC_N'/(H!
M',:[KU_XBU1M1U27S)RH7/8 >E>E?!KP&=3O1XEU*+_1(&_T:-AP[?WJ\_\
M!^@#Q1XKLM)9PD<C[I&_V1R17USI]C!IME#9VL0CMX5"(H]!0#*EY<W\F8=.
MMQO/'FR?=6LBW\#6\]\-1UN9M2O!RHD_U:?1:ZS'-+5*36Q#2>Y$L6Q%1%54
M7^%1@5+BEHJ2@HHHH 3O7G/C"T,.N>;CY9ESGWKT:L#Q3I9U'3"T8S-%\R^X
MK;#S49F-:/-$X/3I9([AD5V 92!3!>W &&"-]144,ICF1\8*M\P]/6GW<8CN
M7Q]UOF7Z&O8LCSV/^V ];:(_A5B"YC-K<G[+&, 5G58M_P#CSNOH*)(46+]K
M4#(M8ORH^W2C[J(GT6JW:E5"[J@ZDXIM: GJ3ZI<3-HNQI""8G; XS7S\W5R
M.Q->]ZNX\BY'18X2H_*O O,3+\_Q'^=>=BUL=N&=[GT3\*-&T"\\!6LU_9V4
MDY9MS2@;J[RTT;PU:W*36EG81SC[C)C-?'R7DT8VQW<T:CHB.0*W/!=[/)XX
MT=3>3D&< @R$@UPG6?4?B7Q9I/A2WM[C5IO+6:01ICGGUJ\O]F:[9+(OV:]M
MW&0<!@17S]\;Y-;NO%0^UV4RZ5;KM@=1E6SU->?:?KNJ:6I73M4GMQ_=1SB@
M#T;XT>%]#T"[LI]+58)[ACYL"'C'KBO.]"5V\3:6(\[OM*8V]N:JWE_<W]S]
MHOKR2>8\!G;<:].^#_@.\U'7(M?OX'AL;;YH XQYC>M &C\?\BZT,-U$1S7F
M?A'1HO$/BFRTF>1HX[AMI9>HKTS]H1P-0T;=Q\C?SKA/AC(A^).CX/\ RTH
M]5_X9_T8'!U*ZQ75>&?A9X;\,3+=06[7%VO26;YL?05V_P#%2T".%^+8#?#;
M4L\?=_G7RNN=D?U6OJ?XND#X:ZED_P!W^=?*R.HC3YNU SZQT+0/"TGA_3WE
ML-.+M A8D#).*W--TS1-/F9M,M[2&1Q\WDXR17QS]NN ,"^N%4= )#7I/P0N
MIIO'KK+=32#[.<*[DB@#Z3&,<5\]_M ?\C-I?_7 _P Z^@UZ<#O7SW^T ZKX
MGTO)_P"6!_G0(YSX0_\ )2]/_P!UOY5]45\J_"!U/Q+T\ _PM_*OJKO0 4M%
M% !1110 4444 )3<=C3Z* .,\3:%"I:\@MR0?]8$ZCWQ7."V2^ME6WN%>:+H
M&X)6O4R.O Y]>]<]JGA6VN9OM5H?L]R.X^Z?K791Q%M)'+5H]4<&;*X[*I'L
MPJS!9W M;G,)!(&.:T[KPMJ)9GB4"0?> /#?2J,6FZHMO<HUO/NX 'K7;[6+
M6YS*#70H_8KG_GF ?=ABK4-HME&;FYG121B,=:NV?A;49E$EPA [(3U^M;]A
MX2B$RW&H.)77[L:\*M14KPCU*C2;,CP_H,=]+Y\T+/;'JTH^_P#A6_\ \(1X
M9_Z UKUS]RMY%5 $4 *.@ X%28KS:E1S=SNA!01SO_"#^&?^@-:_]\4^#P;X
M=M;B.X@TFVCEC.5=5Y!K?HK,LK7%K!>1-#<PQS1D<K(H(KE+WX6>#K]R\FDH
MC$Y.PD5VF*,4 <?I_P -/"6F3"2#2(F<<@R?-75+&D:*B*J1J,!5& *FHP*
M,K4O#^E:R\;:C8Q7)C&$,@SBH+3PCH%A=)=6NE6\4Z<JZKR*W** &+U&>:<>
ME+10!3O;&VU*T:UO8$F@?[T;#(-9/_"#>& ,?V+:_P#?%=%10!SO_"#^&?\
MH"VO_?%6=/\ #.BZ5=&YL-.@@F(VET7!Q6S10 T=*S-3\/:1K$J2ZA80W,B#
M"LZY(%:M% &)9>%="TV[6ZLM,MX;A?NNJX(K97&3ZGK3L#THH **** "BBB@
M HHHH **** "BBB@ HQ110 4444 %%%% !1110 4444 %%%% !1110 4444
?%%%% !1110 4444 %%%% !1110 4444 %%%% '__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>7
<FILENAME>esp-20241231.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Wed Feb 12 03:36:51 UTC 2025 -->
<xs:schema elementFormDefault="qualified" xmlns:srt-types="http://fasb.org/srt-types/2024" targetNamespace="http://espey.com/20241231" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:esp="http://espey.com/20241231" xmlns:dtr="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="esp-20241231_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-20241231_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-20241231_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-20241231_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/ShareholdersEquityType2or3" id="esp_r_ShareholdersEquityType2or3">
        <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/ShareholdersEquityType2or3_Parentheticals" id="esp_r_ShareholdersEquityType2or3_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+4dZb24XlbAukUzPWiif7lQDuIc/ciyhUrD0pT5qOG/FlvslgYn7MpKioXZIrJtf9Gyyu87wdGFXtNGmJLzE9zU/gBGYjlTYAz4H8C3oFpFv/4KSwJjR1BwlBPYZ20xQBCtZVUtoz3hNJQNJtWwRYN/6AgoWBHBSizUhPeV9+4mA1VuX7AKQ==] 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/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-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/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/sic/2024" schemaLocation="https://xbrl.sec.gov/sic/2024/sic-2024.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/ecd/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/ecd-sub/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei-sub/2024" schemaLocation="https://xbrl.sec.gov/dei/2024/dei-sub-2024.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="DenominatorAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DenominatorAbstract"/>
  <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="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="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="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-20241231_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: Wed Feb 12 03:36:51 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-20241231.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense"/>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XlbAukUzPWiif7lQDuIc/ciyhUrD0pT5qOG/FlvslgYn7MpKioXZIrJtf9Gyyu87wdGFXtNGmJLzE9zU/gBGYjlTYAz4H8C3oFpFv/4KSwJjR1BwlBPYZ20xQBCtZVUtoz3hNJQNJtWwRYN/6AgoWBHS0hF3f5rB8qB1sthRPyDgg==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <loc xlink:type="locator" xlink:label="esp_ProceedsFromGrantAward" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromRepurchaseOfEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231_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: Wed Feb 12 03:36:51 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-20241231.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedBalanceSheet_Parentheticals" roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ShareholdersEquityType2or3" roleURI="http://espey.com/role/ShareholdersEquityType2or3"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ShareholdersEquityType2or3_Parentheticals" roleURI="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_BasisofPresentation" roleURI="http://espey.com/role/BasisofPresentation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_InvestmentSecurities" roleURI="http://espey.com/role/InvestmentSecurities"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_NetIncomePerShare" roleURI="http://espey.com/role/NetIncomePerShare"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_StockBasedCompensation" roleURI="http://espey.com/role/StockBasedCompensation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_CommitmentsandContingencies" roleURI="http://espey.com/role/CommitmentsandContingencies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_Revenue" roleURI="http://espey.com/role/Revenue"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_RecentlyIssuedAccountingStandards" roleURI="http://espey.com/role/RecentlyIssuedAccountingStandards"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_EmployeeStockOwnershipPlan" roleURI="http://espey.com/role/EmployeeStockOwnershipPlan"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_InvestmentSecuritiesTables" roleURI="http://espey.com/role/InvestmentSecuritiesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_NetIncomePerShareTables" roleURI="http://espey.com/role/NetIncomePerShareTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_StockBasedCompensationTables" roleURI="http://espey.com/role/StockBasedCompensationTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_EmployeeStockOwnershipPlanTables" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" roleURI="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofWeightedAverageAssumptionsofOptionAwardTable" roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofStockOptionActivityTable" roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofChangesinNonVestedStockOptionsTable" roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_NetIncomePerShareDetails" roleURI="http://espey.com/role/NetIncomePerShareDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_StockBasedCompensationDetails" roleURI="http://espey.com/role/StockBasedCompensationDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_CommitmentsandContingenciesDetails" roleURI="http://espey.com/role/CommitmentsandContingenciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_RevenueDetails" roleURI="http://espey.com/role/RevenueDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/ShareholdersEquityType2or3" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="8" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XlbAukUzPWiif7lQDuIc/ciyhUrD0pT5qOG/FlvslgYn7MpKioXZIrJtf9Gyyu87wdGFXtNGmJLzE9zU/gBGYjlTYAz4H8C3oFpFv/4KSwJjR1BwlBPYZ20xQBCtZVUtoz3hNJQNJtWwRYN/6AgoWBHgHGTl954CM4vHYLkenkm1VsbZQeKc1PC] CSR-->
  <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/2024/elts/us-gaap-2024.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock"/>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:href="esp-20241231.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/2024/elts/srt-2024.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/2024/elts/srt-2024.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/2024/elts/srt-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.xsd#esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="us-gaap_ExcessStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ExcessStockSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:to="us-gaap_ExcessStockSharesOutstanding" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="8" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:role="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_FairValueInputsQuantitativeInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsQuantitativeInformationAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsTable" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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/2024/elts/srt-2024.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="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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/2024/elts/srt-2024.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="us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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-20241231.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="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="esp_NonEmployeeDirectorsMember" xlink:href="esp-20241231.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-20241231.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="us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LettersOfCreditOutstandingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerFunds"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_AccountsPayableCurrentAndNoncurrent" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_TerminationWithdrawalObligation" xlink:href="esp-20241231.xsd#esp_TerminationWithdrawalObligation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="esp_TerminationWithdrawalObligation" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FinanceLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_FinanceLeaseLiability" order="7" 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/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_RevenueDetailsTable" xlink:href="esp-20241231.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="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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/2024/elts/srt-2024.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_AdjustmentsForNewAccountingPronouncementsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="esp_UnitsDeliveredMember" xlink:href="esp-20241231.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-20241231.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="esp_ASC606Member" xlink:href="esp-20241231.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="us-gaap_OrderOrProductionBacklogMember" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231_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: Wed Feb 12 03:36:51 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/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel"/>
  <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"/>
  <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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_FairValueInputsQuantitativeInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsQuantitativeInformationAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsQuantitativeInformationAbstract_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_FairValueInputsQuantitativeInformationAbstract" xlink:to="us-gaap_FairValueInputsQuantitativeInformationAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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 December 31, 2024 and June 30, 2024. Outstanding 2,796,758 and 2,733,958 shares as of December 31, 2024 and June 30, 2024, respectively (includes 200,652 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" 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_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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 (loss) 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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">Denominator for diluted earnings per common shares &#8211; 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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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 (loss), 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/2024/elts/us-gaap-2024.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 (loss), 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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) increase 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/2024/elts/us-gaap-2024.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-20241231.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 (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_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseinESOPPayable" xlink:href="esp-20241231.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">Decrease 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/2024/elts/us-gaap-2024.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-20241231.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">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_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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 (decrease) 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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 333,116 and 395,916 shares of common stock in treasury as of December 31, 2024 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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 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/2024/elts/us-gaap-2024.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">Increase 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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">Decrease 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="esp_DenominatorAbstract" xlink:href="esp-20241231.xsd#esp_DenominatorAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DenominatorAbstract_lbl" xml:lang="en-US">Denominator:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DenominatorAbstract" xlink:to="esp_DenominatorAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="us-gaap_ExcessStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ExcessStockSharesOutstanding"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ExcessStockSharesOutstanding_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="us-gaap_ExcessStockSharesOutstanding" xlink:to="us-gaap_ExcessStockSharesOutstanding_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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">Denominator for basic earnings per common shares &#8211;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/2024/elts/us-gaap-2024.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="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/srt-2024.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/2024/elts/us-gaap-2024.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/2024/elts/srt-2024.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="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XlbAukUzPWiif7lQDuIc/ciyhUrD0pT5qOG/FlvslgYn7MpKioXZIrJtf9Gyyu87wdGFXtNGmJLzE9zU/gBGYjlTYAz4H8C3oFpFv/4KSwJjR1BwlBPYZ20xQBCtZVUtoz3hNJQNJtWwRYN/6AgoWBHphQvKEXpEpJAEzHhzW2H3g==] CSR-->
    <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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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_FinanceLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xml:lang="en-US">Remaining liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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-20241231.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-20241231.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/2024/elts/srt-2024.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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_UnitsDeliveredMember" xlink:href="esp-20241231.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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 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_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="esp_StockBasedCompensationDetailsTable" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.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="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="esp_RevenueDetailsTable" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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_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 amouunt.</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_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_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_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_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_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_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_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="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_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="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_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_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="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_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="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_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_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="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_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_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_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_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_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="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="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_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="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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</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"/>
    <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"/>
    <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-20241231.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="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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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_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"/>
    <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_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="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_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_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_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_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="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl0" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [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_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_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="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_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_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_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="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="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="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="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="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_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_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_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_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_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_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="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl0" xml:lang="en-US">Net Cash Provided by (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_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_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_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_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="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_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_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="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_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_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_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_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="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_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_NetCashProvidedByUsedInFinancingActivities_lbl0" xml:lang="en-US">Net Cash Provided by (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_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="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_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="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="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_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="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_IncreaseDecreaseInOperatingCapitalAbstract_lbl0" xml:lang="en-US">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_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl0" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [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_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_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_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_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_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_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_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_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_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl0" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [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="esp_DenominatorAbstract_lbl0" xml:lang="en-US">Denominator Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DenominatorAbstract" xlink:to="esp_DenominatorAbstract_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_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_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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl0" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect</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_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_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_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_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_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_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_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_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="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"/>
    <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"/>
    <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"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract" xlink:href="esp-20241231.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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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_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="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="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_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_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_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_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="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_NetCashProvidedByUsedInOperatingActivities_lbl0" xml:lang="en-US">Net Cash Provided by (Used in) 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_lbl0"/>
    <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_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="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="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_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_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="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_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="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_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_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="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_ExcessStockSharesOutstanding_lbl0" xml:lang="en-US">Excess Stock, Shares Outstanding</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExcessStockSharesOutstanding" xlink:to="us-gaap_ExcessStockSharesOutstanding_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_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_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_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_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="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="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_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_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_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_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_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_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_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_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_TreasuryStockCommonShares_lbl0" 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_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="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_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_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_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="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_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="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_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="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_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_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="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_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="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_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_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_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="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="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_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="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_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="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_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_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_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_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_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="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_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="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"/>
    <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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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_CashAndCashEquivalentsAtCarryingValue_lbl0" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</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="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_FinanceLeaseLiability_lbl0" xml:lang="en-US">Finance Lease, Liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract" xlink:href="esp-20241231.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"/>
    <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"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract" xlink:href="esp-20241231.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_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="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="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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl0" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [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_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_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_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_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_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_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_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_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_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_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_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_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_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="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"/>
    <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="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"/>
  </labelLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>11
<FILENAME>esp-20241231_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: Wed Feb 12 03:36:51 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-20241231.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedBalanceSheet_Parentheticals" roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ShareholdersEquityType2or3" roleURI="http://espey.com/role/ShareholdersEquityType2or3"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ShareholdersEquityType2or3_Parentheticals" roleURI="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_BasisofPresentation" roleURI="http://espey.com/role/BasisofPresentation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_InvestmentSecurities" roleURI="http://espey.com/role/InvestmentSecurities"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_NetIncomePerShare" roleURI="http://espey.com/role/NetIncomePerShare"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_StockBasedCompensation" roleURI="http://espey.com/role/StockBasedCompensation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_CommitmentsandContingencies" roleURI="http://espey.com/role/CommitmentsandContingencies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_Revenue" roleURI="http://espey.com/role/Revenue"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_RecentlyIssuedAccountingStandards" roleURI="http://espey.com/role/RecentlyIssuedAccountingStandards"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_EmployeeStockOwnershipPlan" roleURI="http://espey.com/role/EmployeeStockOwnershipPlan"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_InvestmentSecuritiesTables" roleURI="http://espey.com/role/InvestmentSecuritiesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_NetIncomePerShareTables" roleURI="http://espey.com/role/NetIncomePerShareTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_StockBasedCompensationTables" roleURI="http://espey.com/role/StockBasedCompensationTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_EmployeeStockOwnershipPlanTables" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofCostGrossUnrealizedGainsGrossUnrealizedLossesandFairValueofAvailableForSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable" roleURI="http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable" roleURI="http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofWeightedAverageAssumptionsofOptionAwardTable" roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsofOptionAwardTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofStockOptionActivityTable" roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofChangesinNonVestedStockOptionsTable" roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_NetIncomePerShareDetails" roleURI="http://espey.com/role/NetIncomePerShareDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_StockBasedCompensationDetails" roleURI="http://espey.com/role/StockBasedCompensationDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_CommitmentsandContingenciesDetails" roleURI="http://espey.com/role/CommitmentsandContingenciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_RevenueDetails" roleURI="http://espey.com/role/RevenueDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20241231.xsd#esp_r_EmployeeStockOwnershipPlanDetails" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanDetails"/>
  <roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#cover" roleURI="http://xbrl.sec.gov/dei/role/document/Cover"/>
  <roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/ShareholdersEquityType2or3" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="2.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/2024/elts/us-gaap-2024.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="3.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/2024/elts/us-gaap-2024.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="4.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/2024/elts/us-gaap-2024.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="5.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/2024/elts/us-gaap-2024.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="6.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/2024/elts/us-gaap-2024.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="7.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/2024/elts/us-gaap-2024.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="8.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/2024/elts/us-gaap-2024.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="9.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/2024/elts/us-gaap-2024.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="10.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </presentationLink>
  <presentationLink xlink:role="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals" xlink:type="extended">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20241231.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/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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>
<!-- [WMV6][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XlbAukUzPWiif7lQDuIc/ciyhUrD0pT5qOG/FlvslgYn7MpKioXZIrJtf9Gyyu87wdGFXtNGmJLzE9zU/gBGYjlTYAz4H8C3oFpFv/4KSwJjR1BwlBPYZ20xQBCtZVUtoz3hNJQNJtWwRYN/6AgoWBHY2ARnhqx5nEXoxlxwtslVQ==] CSR-->
  <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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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-20241231.xsd#esp_ScheduleOfCostGrossUnrealizedGainsGrossUnrealizedLossesAndFairValueOfAvailableForSaleDebtSecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.xsd#esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable" xlink:href="esp-20241231.xsd#esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/srt-2024.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/2024/elts/srt-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.xsd#esp_ScheduleOfDenominatorsOfTheBasicAndDilutedEarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="us-gaap_ExcessStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ExcessStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_ExcessStockSharesOutstanding" 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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="us-gaap_ExcessStockSharesOutstanding_0" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ExcessStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_ExcessStockSharesOutstanding_0" 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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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_FairValueInputsQuantitativeInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsQuantitativeInformationAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueInputsQuantitativeInformationAbstract" 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-20241231.xsd#esp_ScheduleOfStockOptionActivityAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationScheduleofStockOptionActivityDetailsTable" xlink:href="esp-20241231.xsd#esp_StockBasedCompensationScheduleofStockOptionActivityDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsTable" xlink:href="esp-20241231.xsd#esp_StockBasedCompensationDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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-20241231.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-20241231.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="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="3.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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/2024/elts/srt-2024.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="us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LettersOfCreditOutstandingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerFunds"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" 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-20241231.xsd#esp_TerminationWithdrawalObligation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="TerminationWithdrawalObligation" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FinanceLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_FinanceLeaseLiability" order="7.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/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="RevenueDetailsTable" xlink:href="esp-20241231.xsd#esp_RevenueDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.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-20241231.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-20241231.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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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="2.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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="3.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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"/>
    <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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.xsd#us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20241231.xsd#esp_EmployeeStockOwnershipPlanDetailsTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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-20241231.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-20241231.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/2024/elts/us-gaap-2024.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/2024/elts/us-gaap-2024.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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366967440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - shares<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Feb. 10, 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">Dec. 31,  2024<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">Q2<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,796,758<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484369842176">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Balance Sheets - USD ($)<br></strong></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_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">$ 8,027,478<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">20,264,567<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,993,840<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,813,168<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">689,757<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">15,109,021<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">17,611,946<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">864,449<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">1,793,934<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">55,556,214<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">4,635,071<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">60,191,285<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,662,701<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">502,295<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">534,025<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">180,518<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,284,491<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">837<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">9,875,627<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">334,146<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">15,374,640<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">15,374,640<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 December 31, 2024 and June 30, 2024. Outstanding 2,796,758 and 2,733,958 shares as of December 31, 2024 and June 30, 2024, respectively (includes 200,652 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">24,851,718<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">5,004<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">28,232,545<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">54,132,558<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 333,116 and 395,916 shares of common stock in treasury as of December 31, 2024 and June 30, 2024, respectively</a></td>
<td class="num">(5,447,820)<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">44,816,645<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">$ 60,191,285<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/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 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 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 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)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-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 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/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 2: 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 3: 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 4: 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 5: 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 6: 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 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 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: 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 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)(iii))<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/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 29: 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 30: 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 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 2: 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 3: 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 4: 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 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 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 7: 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 8: 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 9: 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 10: 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 11: 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 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)(iii)(A))<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 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 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)(5))<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 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 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)(iii)(A))<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)(4)(iii)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: 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 currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</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://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/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 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 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<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 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: 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://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 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(25))<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(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: 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 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(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: 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 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)(4)(iii)(A))<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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: 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 28: 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 29: 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/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/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 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(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: 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 5: 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 6: 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 7: 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://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 2: 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 3: 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 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 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 6: 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 7: 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 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 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: 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 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)(iii)(A))<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 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 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)(5))<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 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 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)(iii)(A))<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)(4)(iii)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: 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 21: 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://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> -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 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/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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366029840">
<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>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_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,796,758<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">200,652<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">333,116<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<br> -Section 25<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480637/718-40-25-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_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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484370310608">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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">$ 13,608,740<span></span>
</td>
<td class="nump">$ 10,302,541<span></span>
</td>
<td class="nump">$ 24,051,958<span></span>
</td>
<td class="nump">$ 18,870,755<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">10,445,028<span></span>
</td>
<td class="nump">7,159,966<span></span>
</td>
<td class="nump">18,087,364<span></span>
</td>
<td class="nump">13,482,803<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">3,163,712<span></span>
</td>
<td class="nump">3,142,575<span></span>
</td>
<td class="nump">5,964,594<span></span>
</td>
<td class="nump">5,387,952<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,139,275<span></span>
</td>
<td class="nump">1,049,690<span></span>
</td>
<td class="nump">2,220,944<span></span>
</td>
<td class="nump">2,073,371<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">2,024,437<span></span>
</td>
<td class="nump">2,092,885<span></span>
</td>
<td class="nump">3,743,650<span></span>
</td>
<td class="nump">3,314,581<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">260,222<span></span>
</td>
<td class="nump">161,513<span></span>
</td>
<td class="nump">527,839<span></span>
</td>
<td class="nump">308,943<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">8,203<span></span>
</td>
<td class="nump">5,251<span></span>
</td>
<td class="nump">18,994<span></span>
</td>
<td class="nump">19,394<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">268,425<span></span>
</td>
<td class="nump">166,764<span></span>
</td>
<td class="nump">546,833<span></span>
</td>
<td class="nump">328,337<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,292,862<span></span>
</td>
<td class="nump">2,259,649<span></span>
</td>
<td class="nump">4,290,483<span></span>
</td>
<td class="nump">3,642,918<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">384,363<span></span>
</td>
<td class="nump">464,279<span></span>
</td>
<td class="nump">783,667<span></span>
</td>
<td class="nump">753,004<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,908,499<span></span>
</td>
<td class="nump">1,795,370<span></span>
</td>
<td class="nump">3,506,816<span></span>
</td>
<td class="nump">2,889,914<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 (loss) gain on investment securities</a></td>
<td class="num">(9,232)<span></span>
</td>
<td class="nump">3,622<span></span>
</td>
<td class="num">(1,540)<span></span>
</td>
<td class="nump">5,417<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,899,267<span></span>
</td>
<td class="nump">$ 1,798,992<span></span>
</td>
<td class="nump">$ 3,505,276<span></span>
</td>
<td class="nump">$ 2,895,331<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.74<span></span>
</td>
<td class="nump">$ 0.73<span></span>
</td>
<td class="nump">$ 1.37<span></span>
</td>
<td class="nump">$ 1.17<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.71<span></span>
</td>
<td class="nump">$ 0.72<span></span>
</td>
<td class="nump">$ 1.32<span></span>
</td>
<td class="nump">$ 1.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_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,583,307<span></span>
</td>
<td class="nump">2,478,588<span></span>
</td>
<td class="nump">2,554,622<span></span>
</td>
<td class="nump">2,474,340<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,707,542<span></span>
</td>
<td class="nump">2,499,210<span></span>
</td>
<td class="nump">2,653,890<span></span>
</td>
<td class="nump">2,492,499<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.15<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.3<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/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 2: 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 3: 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 4: 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 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/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 7: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: 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 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)(5))<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 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 12: 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 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)(iii)(B))<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)(iv))<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)(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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: 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 17: 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 18: 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 19: 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 20: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: 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 17: 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 18: 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 19: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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/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 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 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 4: 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 5: 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 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 (ee)<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 (c)<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/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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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 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)(iii)(A))<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)(4)(iv))<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)(5))<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 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 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)(A))<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)(iii)(B))<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)(iv))<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)(5))<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/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/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 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 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 4: 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 5: 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 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 (ee)<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 (c)<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 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 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><br>Reference 10: 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 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(10))<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 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/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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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/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 2: 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 3: 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 4: 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 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(20))<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 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 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 10: 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 11: 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 12: 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 13: 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 14: 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 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 (b)<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 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: 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 18: 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 19: 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 20: 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 21: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 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)(iii)(A))<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 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 26: 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 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)(i))<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)(iii)(A))<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)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<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)(iv))<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)(5))<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 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 33: 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 34: 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 35: 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 36: 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 37: 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/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 2: 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 3: 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 4: 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 5: 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 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 (c)<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/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 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 2: 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 3: 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 4: 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 5: 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 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 (a)<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 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/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 9: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: 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 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)(iii)(A))<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 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 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)(5))<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 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 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)(iii)(A))<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)(4)(iii)(B))<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)(iv))<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)(5))<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 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 21: 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 22: 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 23: 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 24: 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 25: 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 26: 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://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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484364543824">
<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="nump">427,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">2,889,914<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,889,914<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 (loss), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,417<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,417<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">2,895,331<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">34,490<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 24,990<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">59,480<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">4,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="num">(4,000)<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">131,155<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">131,155<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">(741,895)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(741,895)<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="nump">423,241<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 Sep. 30, 2023</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">23,373,388<span></span>
</td>
<td class="num">(634)<span></span>
</td>
<td class="nump">22,591,316<span></span>
</td>
<td class="num">$ (6,013,701)<span></span>
</td>
<td class="num">(4,273,378)<span></span>
</td>
<td class="nump">36,720,282<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 Sep. 30, 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="nump">423,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">1,795,370<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,795,370<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 (loss), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,622<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,622<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">1,798,992<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">75,502<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,502<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">(370,947)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(370,947)<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="nump">423,241<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="nump">395,916<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,733,958<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">3,506,816<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,506,816<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 (loss), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,540)<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">(1,540)<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">3,505,276<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">728,257<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 395,168<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,123,425<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">62,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">(62,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">193,033<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">193,033<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">(1,279,061)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,279,061)<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="nump">333,116<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,796,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_StockholdersEquity', window );">Balance at Sep. 30, 2024</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">24,111,147<span></span>
</td>
<td class="nump">14,236<span></span>
</td>
<td class="nump">26,969,864<span></span>
</td>
<td class="num">$ (5,777,389)<span></span>
</td>
<td class="num">(3,868,093)<span></span>
</td>
<td class="nump">$ 42,493,056<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 Sep. 30, 2024</a></td>
<td class="nump">2,744,458<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">385,416<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">1,908,499<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,908,499<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 (loss), net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9,232)<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">(9,232)<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">1,899,267<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">649,030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 329,569<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">978,599<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">52,300<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">(52,300)<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">91,541<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">91,541<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">(645,818)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(645,818)<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="nump">333,116<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,796,758<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>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_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/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 2: 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 3: 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 4: 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 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(20))<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 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 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 10: 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 11: 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 12: 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 13: 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 14: 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 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 (b)<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 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: 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 18: 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 19: 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 20: 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 21: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 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)(iii)(A))<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 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 26: 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 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)(i))<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)(iii)(A))<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)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<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)(iv))<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)(5))<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 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 33: 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 34: 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 35: 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 36: 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 37: 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://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 3: 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://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> -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 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/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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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>
</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484360704864">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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 (loss), net of tax</a></td>
<td class="num">$ (1,939)<span></span>
</td>
<td class="nump">$ 761<span></span>
</td>
<td class="num">$ (323)<span></span>
</td>
<td class="nump">$ 1,138<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.15<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.3<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484528803744">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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">$ 3,506,816<span></span>
</td>
<td class="nump">$ 2,889,914<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">193,033<span></span>
</td>
<td class="nump">131,155<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">219,126<span></span>
</td>
<td class="nump">233,526<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">286,262<span></span>
</td>
<td class="nump">183,364<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="nump">30,705<span></span>
</td>
<td class="num">(212,848)<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 on disposal of property, plant and equipment</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(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_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 );">Increase in trade accounts receivable</a></td>
<td class="num">(358,350)<span></span>
</td>
<td class="num">(205,985)<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">1,632,063<span></span>
</td>
<td class="nump">2,027,322<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 );">Decrease in prepaid expenses and other current assets</a></td>
<td class="nump">1,437,468<span></span>
</td>
<td class="nump">385,089<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) increase in accounts payable</a></td>
<td class="num">(1,088,509)<span></span>
</td>
<td class="nump">892,011<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">(425,868)<span></span>
</td>
<td class="num">(382,530)<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 (decrease) in vacation accrual</a></td>
<td class="nump">22,881<span></span>
</td>
<td class="num">(163,645)<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 );">Decrease in ESOP payable</a></td>
<td class="num">(105,744)<span></span>
</td>
<td class="num">(70,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_IncreaseDecreaseInOtherAccruedLiabilities', window );">Increase in other accrued expenses</a></td>
<td class="nump">526,939<span></span>
</td>
<td class="nump">436,356<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 );">Decrease in payroll and other taxes withheld</a></td>
<td class="num">(56,025)<span></span>
</td>
<td class="num">(11,786)<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 (decrease) in contract liabilities</a></td>
<td class="nump">832,205<span></span>
</td>
<td class="num">(457,836)<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">113,539<span></span>
</td>
<td class="nump">229,625<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">6,766,541<span></span>
</td>
<td class="nump">5,939,155<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">(1,547,922)<span></span>
</td>
<td class="num">(3,469,630)<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">968,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">(14,007,475)<span></span>
</td>
<td class="num">(13,410,242)<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">12,620,000<span></span>
</td>
<td class="nump">11,508,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">(2,935,397)<span></span>
</td>
<td class="num">(4,402,562)<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,279,061)<span></span>
</td>
<td class="num">(741,895)<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,123,425<span></span>
</td>
<td class="nump">59,480<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">(155,636)<span></span>
</td>
<td class="num">(682,415)<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">3,675,508<span></span>
</td>
<td class="nump">854,178<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">8,027,478<span></span>
</td>
<td class="nump">3,602,933<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">$ 639,014<span></span>
</td>
<td class="nump">$ 702,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 amouunt.</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 equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</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 of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</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 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 3: 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://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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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/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><br>Reference 2: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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 activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors 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 activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and 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 activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing 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> -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/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 2: 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 3: 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 4: 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 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(20))<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 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 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 10: 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 11: 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 12: 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 13: 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 14: 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 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 (b)<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 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: 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 18: 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 19: 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 20: 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 21: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 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)(iii)(A))<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 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 26: 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 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)(i))<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)(iii)(A))<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)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<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)(iv))<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)(5))<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 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 33: 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 34: 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 35: 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 36: 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 37: 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484464661040">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 275<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/275/tableOfContent<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484469791264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investment Securities<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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 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">&#9642;</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">&#9642;</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">&#9642;</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 December 31, 2024 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 December 31, 2024 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 December 31, 2024 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">
    <td style="text-decoration: underline">December 31, 2024</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><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><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><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; background-color: rgb(204,238,255)">
    <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">19,028,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">19,028,000</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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,476</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,797</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,459</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,136,814</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">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">95,756</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">3,997</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-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">99,753</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 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">20,258,232</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">9,794</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,459</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">20,264,567</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: none; 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; ">
    <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; background-color: rgb(204,238,255)">
    <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-12">&#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-13">&#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; ">
    <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; background-color: rgb(204,238,255)">
    <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">510,288</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,773</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><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="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 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 December 31, 2024, 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 December 31, 2024 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">December 31, 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; ">
    <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">18,116,028</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">2,148,539</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">20,264,567</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371455296">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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>
</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 0 shares of our common stock for the three and six
months ended December 31, 2024 and 149,531 shares for the three and six months ended December 31, 2023, 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 six month
periods ended December 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">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: right; border-bottom: Black 1pt solid">2023</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">3,506,816</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">2,889,914</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">29,384</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,523</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">2,767</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">2,830</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,554,622</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,474,340</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">29,384</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,523</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">2,767</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,830</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,268</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">18,159</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,653,890</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,492,499</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371656592">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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 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 December 31, 2024 and 2023 was $91,541 and $75,502, 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 December 31, 2024 and 2023 was $8,362 and $10,290, respectively. The deferred tax benefit related to
the NQSOs as of December 31, 2024 and 2023 was approximately $1,756 and $2,161, respectively. Total stock-based compensation expense recognized
in the statements of comprehensive income for the six-month periods ended December 31, 2024 and 2023 was $193,033 and $131,155, respectively,
before income taxes. The amount of this stock-based compensation expense related to NQSOs for the six-month periods ended December 31,
2024 and 2023 was $15,421 and $18,545, respectively. The deferred tax benefit related to the NQSOs as of December 31, 2024 and 2023 was
approximately $3,238 and $3,894, 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 December 31, 2024, there was $423,041 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 $385,833 relates to ISOs and $37,208 relates to NQSOs. The total deferred tax benefit related to these awards is expected to be
$7,814.</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 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 December
31, 2024, options covering 87,375 shares have been exercised and options covering 307,656 shares are outstanding. Options covering 4,969
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 December 31, 2024, 27,600 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 six months ended December 31, 2024 and 2023.</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">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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">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: justify">Company&#8217;s expected volatility</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">33.33%</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: justify">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: justify">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 style="text-align: justify">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.40</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">&#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.50 per share for the six months ended December 31, 2024 and paid $0.30 cash dividends for the six months ended December 31,
2023. 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 six months ended December 31, 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; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">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%; padding-bottom: 1pt">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-15">&#160;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1pt">Granted</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">76,500</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.58</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.52</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">Exercised</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">(62,800</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.89</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-16">&#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-17">&#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 December 31, 2024</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">335,256</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.23</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.95</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">3,661,427</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 December 31, 2024</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">320,083</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.19</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.84</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">3,507,361</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 December 31, 2024</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">180,356</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.26</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">5.09</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,964,248</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 December 31, 2024 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 December 31, 2024. This amount changes based on the
fair market value of the Company&#8217;s common stock. The intrinsic value of options exercised during the six months ended December 31,
2024 and 2023 was $668,878 and $9,482, respectively.</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">The following table summarizes changes in non-vested stock options
during the six months ended December 31, 2024:</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">76,500</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.40</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">(68,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.11</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 December 31, 2024</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">154,900</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.78</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/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 2: 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 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 (a)<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 (h)(2)<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 (h)(2)(i)<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 (l)<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371617264">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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 December 31, 2024 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, also 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">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, with completion slated for the first quarter of calendar
year 2025. 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 will record the receipt of milestone payments received as a
reduction from the cost of the assets. The Company will have 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 December 31, 2024, 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 December 31, 2024 was $2,311,788
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 December 31, 2024 was approximately $11,770 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 December 31, 2024 and June 30, 2024 totaled $561,852 and $772,157, respectively, shown within the accounts payable
balance on the Company&#8217;s balance sheets. The remaining liability of $561,852 is expected to be paid in the second half of fiscal
2025. As the Company was the only remaining contributing employer to the multiemployer pension plan, its withdrawal constitutes a mass
withdrawal termination. Final withdrawal calculations are contingent upon the availability of January 1, 2025 assets and the finalization
of December 31, 2024 liabilities as the withdrawal liability will need to be re-determined based on a December 31, 2024 measurement date.
The Company does not expect future adjustments to the established liability to have a material impact on the Company&#8217;s financial
statements. The cost of the withdrawal liability obligation is recorded in indirect overhead product costs, capitalized in inventory and
expensed through cost of sales based on shipments.</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. There are currently
no expenditures or amounts that are considered reimbursable under this grant.</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371510976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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">Total revenue recognized for the three and six
months ended December 31, 2024 based on units delivered was $9,237,688 and $17,500,184, respectively, compared to $8,237,156 and $14,642,694
for the same period in fiscal year 2024. Total revenue recognized for the three and six months ended December 31, 2024 based on milestones
achieved was $4,371,052 and $6,551,774, respectively, compared to $2,065,385 and $4,228,061 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 December 31, 2024. 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 $9,875,627 and $9,043,422
as of December 31, 2024 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. Revenue recognized that was in contract liabilities in the beginning
of the fiscal year was $2,377,108 for the six months ended December 31, 2024. 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 December 31, 2024
totaling approximately $120.1 million is currently estimated to be recognized in the following fiscal years: 16.6% in 2025; 37.4% in 2026;
7.6% in 2027, and 38.4% 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 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9<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 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<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 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15<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 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<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 (b)<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 (c)<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 (d)<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 (e)<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 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br><br>Reference 10: 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484464671008">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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. Similarly, the Company would be required to disclose income taxes paid (net of refunds received) equal to or greater than five percent
of 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">&#160;</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">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 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 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 (b)(4)<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 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 4: 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 5: 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 6: 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 7: 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 8: 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 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 (d)(1)<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 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 11: 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 12: 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 13: 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 14: 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 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 (h)(2)<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 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 17: 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 18: 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 19: 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 20: 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 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 24: 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 25: 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 26: 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 27: 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 28: 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371552496">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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. Accordingly,
the shares purchased by the ESOP are reported as Unearned ESOP shares in the balance sheets and the statements 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 $163,067
and $94,175 for the three-month periods ended December 31, 2024 and 2023, respectively. ESOP compensation expense was $286,262 and $183,364
for the six-month periods ended December 31, 2024 and 2023, 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 December
31, 2024 and 2023 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">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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; 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">385,641</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">440,801</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: justify">Committed-to-be-released shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">10,835</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">11,080</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: justify; 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">200,652</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">222,565</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: justify; 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">597,128</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">674,446</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">6,049,658</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">4,161,966</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">&#160;</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 six months ended December
31, 2024 and 2023, 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 six months ended December 31, 2024 and 2023 totaled 65,491 and 44,157 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371646080">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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,908,499<span></span>
</td>
<td class="nump">$ 1,795,370<span></span>
</td>
<td class="nump">$ 3,506,816<span></span>
</td>
<td class="nump">$ 2,889,914<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/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 2: 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 3: 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 4: 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 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(20))<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 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 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 10: 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 11: 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 12: 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 13: 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 14: 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 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 (b)<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 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: 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 18: 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 19: 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 20: 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 21: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 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)(iii)(A))<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 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 26: 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 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)(i))<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)(iii)(A))<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)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<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)(iv))<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)(5))<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 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 33: 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 34: 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 35: 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 36: 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 37: 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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366104496">
<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>Dec. 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_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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366186496">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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 December 31, 2024 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">
    <td style="text-decoration: underline">December 31, 2024</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><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><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><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; background-color: rgb(204,238,255)">
    <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">19,028,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">19,028,000</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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,476</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,797</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,459</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,136,814</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">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">95,756</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">3,997</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-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">99,753</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 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">20,258,232</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">9,794</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,459</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">20,264,567</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: none; 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; ">
    <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; background-color: rgb(204,238,255)">
    <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-12">&#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-13">&#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; ">
    <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; background-color: rgb(204,238,255)">
    <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">510,288</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,773</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><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="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 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 December 31, 2024 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">December 31, 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; ">
    <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">18,116,028</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">2,148,539</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">20,264,567</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371627152">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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>
</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 six month
periods ended December 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">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: right; border-bottom: Black 1pt solid">2023</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">3,506,816</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">2,889,914</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">29,384</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,523</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">2,767</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">2,830</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,554,622</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,474,340</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">29,384</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,523</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">2,767</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,830</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,268</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">18,159</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,653,890</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,492,499</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371563088">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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 six months ended December 31, 2024 and 2023.</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">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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">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: justify">Company&#8217;s expected volatility</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">33.33%</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: justify">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: justify">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 style="text-align: justify">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.40</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 six months ended December 31, 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; margin-left: auto; margin-right: auto; border-spacing: 0px;"> <tr style="vertical-align: bottom"> <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="border-bottom: Black 1pt solid">&#160;</td> <td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">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%; padding-bottom: 1pt">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-15">&#160;</div></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1pt">Granted</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">76,500</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.58</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.52</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">Exercised</td><td>&#160;</td> <td style="text-align: left">&#160;</td><td style="text-align: right">(62,800</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.89</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-16">&#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-17">&#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 December 31, 2024</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">335,256</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.23</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.95</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">3,661,427</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 December 31, 2024</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">320,083</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.19</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.84</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">3,507,361</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 December 31, 2024</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">180,356</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.26</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">5.09</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,964,248</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 six months ended December 31, 2024:</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">76,500</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.40</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">(68,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.11</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 December 31, 2024</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">154,900</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.78</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484371626160">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 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_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 December
31, 2024 and 2023 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">December 31, 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: right; border-bottom: Black 1pt solid">December 31, 2023</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; 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">385,641</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">440,801</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: justify">Committed-to-be-released shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">10,835</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">11,080</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: justify; 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">200,652</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">222,565</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: justify; 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">597,128</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">674,446</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">6,049,658</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">4,161,966</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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<br> -Section 50<br> -Paragraph 1<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484370012160">
<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>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_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">$ 20,258,232<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">9,794<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">(3,459)<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">20,264,567<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">19,028,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">19,028,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,476<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">5,797<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">(3,459)<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,136,814<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="nump">95,756<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="nump">3,997<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="nump">$ 99,753<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484365983296">
<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>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_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">$ 18,116,028<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">2,148,539<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">$ 20,264,567<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484470050608">
<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="1">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</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>
</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">0<span></span>
</td>
<td class="nump">149,531<span></span>
</td>
<td class="nump">149,531<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484369755168">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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,908,499<span></span>
</td>
<td class="nump">$ 1,795,370<span></span>
</td>
<td class="nump">$ 3,506,816<span></span>
</td>
<td class="nump">$ 2,889,914<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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ExcessStockSharesOutstanding', window );">Common shares outstanding, beginning of period</a></td>
<td class="nump">2,733,958<span></span>
</td>
<td class="nump">2,702,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="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,384<span></span>
</td>
<td class="nump">2,523<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,767<span></span>
</td>
<td class="nump">2,830<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 );">Denominator for basic earnings per common shares &#8211;Weighted average common shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,554,622<span></span>
</td>
<td class="nump">2,474,340<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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ExcessStockSharesOutstanding', window );">Common shares outstanding, beginning of period</a></td>
<td class="nump">2,733,958<span></span>
</td>
<td class="nump">2,702,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="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,384<span></span>
</td>
<td class="nump">2,523<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,767<span></span>
</td>
<td class="nump">2,830<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">99,268<span></span>
</td>
<td class="nump">18,159<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 );">Denominator for diluted earnings per common shares &#8211; Weighted average common shares</a></td>
<td class="nump">2,707,542<span></span>
</td>
<td class="nump">2,499,210<span></span>
</td>
<td class="nump">2,653,890<span></span>
</td>
<td class="nump">2,492,499<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_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_ExcessStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 excess stock held by shareholders.</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_ExcessStockSharesOutstanding</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_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 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 2: 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 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/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 2: 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 3: 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 4: 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 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(20))<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 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 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 10: 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 11: 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 12: 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 13: 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 14: 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 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 (b)<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 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: 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 18: 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 19: 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 20: 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 21: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 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)(iii)(A))<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 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 26: 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 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)(i))<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)(iii)(A))<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)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<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)(iv))<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)(5))<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 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 33: 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 34: 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 35: 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 36: 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 37: 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://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://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 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<br> -Section 25<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480637/718-40-25-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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484360786784">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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">$ 91,541<span></span>
</td>
<td class="nump">$ 75,502<span></span>
</td>
<td class="nump">$ 193,033<span></span>
</td>
<td class="nump">$ 131,155<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">7,814<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">$ 423,041<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 423,041<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">4,969<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,969<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.5<span></span>
</td>
<td class="nump">$ 0.3<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">$ 668,878<span></span>
</td>
<td class="nump">$ 9,482<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">10,290<span></span>
</td>
<td class="nump">15,421<span></span>
</td>
<td class="nump">18,545<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">$ 2,161<span></span>
</td>
<td class="nump">3,238<span></span>
</td>
<td class="nump">$ 3,894<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">37,208<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37,208<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">$ 385,833<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 385,833<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">87,375<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">307,656<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">307,656<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] | Non-Employee Directors [Member] | Maximum [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] | Individual Employee [Member] | Maximum [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">27,600<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 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 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 (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 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 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(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>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_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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366099760">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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_FairValueInputsQuantitativeInformationAbstract', 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">33.33%<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.4<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_FairValueInputsQuantitativeInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueInputsQuantitativeInformationAbstract</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_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_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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366436560">
<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">6 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>Dec. 31, 2024 </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">76,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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Granted | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21.58<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 6 months 7 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">(62,800)<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.89<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">335,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Ending | $ / shares</a></td>
<td class="nump">$ 18.41<span></span>
</td>
<td class="nump">$ 19.23<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 11 months 12 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">$ 3,661,427<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">320,083<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.19<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 10 months 2 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">$ 3,507,361<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">180,356<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.26<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">5 years 1 month 2 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,964,248<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 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 2: 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 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 (a)(1)<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 (a)(2)<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 (a)(3)<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 (c)(1)(i)<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 (c)(1)(ii)<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 (c)(1)(iii)<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 (c)(1)(iv)<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 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 11: 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 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 (c)(1)(iv)(03)<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 (c)(1)(iv)(04)<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)(2)(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)(2)(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)(2)(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)(2)(iii)(01)<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)(2)(iii)(02)<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)(2)(iii)(03)<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 (d)(1)<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 (d)(2)<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 (e)(1)<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 (e)(2)<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 (f)(2)(i)<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 (f)(2)(ii)<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 (f)(2)(iii)<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 (f)(2)(iv)<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 (f)(2)(v)<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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484366881584">
<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">6 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2024 </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">76,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Average Grant Date Fair Value (per Option), Granted | $ / shares</a></td>
<td class="nump">$ 5.4<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">(68,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.11<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">154,900<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.78<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>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_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>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_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>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_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>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_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>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_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>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_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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484370743856">
<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>Dec. 31, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</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>
<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="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">3,400,000<span></span>
</td>
<td class="nump">7,400,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_DeferredTaxAssetsLiabilitiesNet', window );">Deferred tax asset</a></td>
<td class="nump">888,032<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>
</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,311,788<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">11,770<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="nump">772,157<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_FinanceLeaseLiability', window );">Remaining liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 561,852<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_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_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_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Present value of lessee's discounted obligation for lease payments from finance lease.</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 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-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_FinanceLeaseLiability</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_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>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_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_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>
</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484360498656">
<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">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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">$ 13,608,740<span></span>
</td>
<td class="nump">$ 10,302,541<span></span>
</td>
<td class="nump">$ 24,051,958<span></span>
</td>
<td class="nump">$ 18,870,755<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">$ 2,377,108<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_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">9,875,627<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,875,627<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] | 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">$ 120,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 120,100,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">16.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16.60%<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">37.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37.40%<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">7.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.60%<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">38.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">38.40%<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_srt_StatementScenarioAxis=esp_UnitsDeliveredMember', window );">Units Delivered [Member] | 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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 9,237,688<span></span>
</td>
<td class="nump">8,237,156<span></span>
</td>
<td class="nump">$ 17,500,184<span></span>
</td>
<td class="nump">14,642,694<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_srt_StatementScenarioAxis=esp_MilestonesAchievedMember', window );">Milestones Achieved [Member] | 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="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">$ 4,371,052<span></span>
</td>
<td class="nump">$ 2,065,385<span></span>
</td>
<td class="nump">$ 6,551,774<span></span>
</td>
<td class="nump">$ 4,228,061<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 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<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 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: 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 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 2: 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 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 (b)<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 (c)<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 (d)<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 (e)<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 (f)<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 (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 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 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 2: 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 3: 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 4: 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 5: 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 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 (a)<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 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/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 9: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: 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 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)(iii)(A))<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 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 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)(5))<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 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 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)(iii)(A))<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)(4)(iii)(B))<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)(iv))<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)(5))<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 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 21: 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 22: 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 23: 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 24: 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 25: 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 26: 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_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>
<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>
</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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484364563184">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th">
<div>Dec. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2024 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </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">$ 163,067<span></span>
</td>
<td class="nump">$ 94,175<span></span>
</td>
<td class="nump">$ 286,262<span></span>
</td>
<td class="nump">$ 183,364<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">65,491<span></span>
</td>
<td class="nump">44,157<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>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_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>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_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.0.1</span><table class="report" border="0" cellspacing="2" id="idm45484364232064">
<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>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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">385,641<span></span>
</td>
<td class="nump">440,801<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">10,835<span></span>
</td>
<td class="nump">11,080<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">200,652<span></span>
</td>
<td class="nump">222,565<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">597,128<span></span>
</td>
<td class="nump">674,446<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">$ 6,049,658<span></span>
</td>
<td class="nump">$ 4,161,966<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 40<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    ( $& 3%H'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " !!@$Q:_0(@B>X    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+!
M2L0P$(9?17)O)TE9#Z';B^))07!!\1:2V=U@DX9DI-VW-ZV[740?P&-F_GSS
M#4QKHC)#PN<T1$SD,-],O@]9F;AE1Z*H +(YHM>Y+HE0FOLA>4WEF0X0M?G0
M!P3)^2UX)&TU:9B!55R)K&NM42:AIB&=\=:L^/B9^@5F#6"/'@-E$+4 ULT3
MXVGJ6[@"9AAA\OF[@'8E+M4_L4L'V#DY9;>FQG&LQV;)E1T$O#T]OBSK5BYD
MTL%@^96=HE/$+;M,?FWN[G</K)-<;BHN*R%W4B@NU*9YGUU_^%V%_6#=WOUC
MXXM@U\*ON^B^ %!+ P04    " !!@$Q:F5R<(Q &  "<)P  $P   'AL+W1H
M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03<VEVV[29A.U.
M'X416(UL>621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X
M8-DOV]:[MR_>X%<R)!%!,!FGK_# "J5,7K5::0##.'W)$Q+#W(*+"$MX%,O6
M7.!;&B\CUNJTV]U6A&ELH1A'9&!]7BQH0-!445IO7R"TY1\S^!7+5(UEHP$3
M5T$FN8BT\OELQ?S:WCYES^DZ'3*!;C ;6"!_SF^GY$Y:B.%4PL3 :F<_5FO'
MT=)(@(+)?90%NDGVH],5"#(-.SJ=6,YV?/;$[9^,RMIT-&T:X./Q>#BVR]*+
M<!P$X%&[GL*=]&R_I$$)M*-IT&38]MJND::JC5-/T_=]W^N;:)P*C5M/TVMW
MW=..B<:MT'@-OO%/A\.NB<:KT'3K:28G_:YKI.D6:$)&X^MZ$A6UY4#3( !8
M<';6S-(#EEXI^G64&MD=N]U!7/!8[CF)$?[&Q036:=(9EC1&<IV0!0X -\31
M3%!\KT&VBN#"DM)<D-;/*;50&@B:R('U1X(AQ=RO_?67N\FD,WJ=?3K.:Y1_
M::L!I^V[F\^3_'/HY)^GD]=-0LYPO"P)\?LC6V&')VX[$W(Z'&="?,_V]I&E
M)3+/[_D*ZTX\9Q]6EK!=S\_DGHQR([O=]EA]]D]';B/7J<"S(M>41B1%G\@M
MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7
MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V<
M/!T3$LV4"P9!AI<D)A*I.7Y-2!/^*Z7:_IS30/"4+R3Z2I&/:;,CIW0FS>@S
M&L%&KQMUAVC2/'K^!?F<-0H<D1L= F<;LT8AA&F[\!ZO)(Z:K<(1*T(^8ADV
M&G*U%H&V<:F$8%H2QM%X3M*T$?Q9K#63/F#([,V1=<[6D0X1DEXW0CYBSHN0
M$;\>ACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0'
MHYI9";V$5FJ?JH<T/J@>,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y
M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RS<C'5*^3*=@Y
MG\#L_6@^GO'M^MDDA*^:62TC%I!+@;-!)+C\B\KP*L0)Z&1;)0G+5--E-XH2
MGD(;;NE3]4J5U^6ON2BX/%ODZ:^A=#XLS_D\7^>TS0LS0[=R2^JVE+ZU)CA*
M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D*
MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-#
MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B
M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P
MOFH]M!5.S_Y9K<B?#!%.%@L22&.4%Z9*HO,94[[G*TG$53B_13.V$I<8O./F
MQW%.4[@2=K8/ C*YNSFI>F4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W
MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2
MD 83 <V4R43P H)DIAR F/H+O?(,N2D5SJT^.7]%+(.&3E[2)1(4BK ,!2$7
M<N/O[Y-J=XS7^BR!;814,F35%\I#B<$],W)#V%0E\Z[:)@N%V^)4S;L:OB9@
M2\-Z;ITM)__;7M0]M!<]1O.CF> >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F
M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+
M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5
M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0    (
M $& 3%I3;Q3>3 8  .DB   8    >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL
MM9IK<^(V%(:_]U=H:&>GG5D"DH DNPDSB1>VF>;"AK2=M-,/BBW L[;%2H(D
M_[Y'MK')5A;4@_,A^'9>].IV'AF=/0OY52TXU^@ECA)UWEIHO?S0Z2A_P6.F
MCL22)W!G)F3,-)S*>4<M)6=!&A1''=+M#CHQ"Y/6\"R]-I'#,['249CPB41J
M%<=,OE[R2#R?MW!K<^$^G"^TN= 9GBW9G$^Y_GTYD7#6*52",.:)"D6"))^=
MMR[P!X\.3$#ZQ!\A?U9;Q\A8>1+BJSFY"LY;75,B'G%?&PD&'VON\2@R2E".
M;[EHJ_A.$[A]O%$?I^;!S!-3W!/1GV&@%^>MDQ8*^(RM(GTOGG_EN:&^T?-%
MI-+_Z#E[MM=K(7^EM(CS8"A!'";9)WO)*V(K@)** )('D.\"<-4WT#R ID:S
MDJ6V/C'-AF=2/"-IG@8U<Y#631H-;L+$-.-42[@;0IP>>F+-)6HCM6"2J[..
M!DUSI^/G\9=9/*F('Z ;D>B%0J,DX,';^ Z4I2@0V13HDC@%/W'_"%'\'I$N
MZ5G*X[G#Q_SI".%N&MYW%(<6]4-3/5I5'.&OH-=J=)5D8\;TO;^OX2ETI7FL
M_K%562;9LTN:@?E!+9G/SULP\A27:]X:OOL1#[H?;7X/)/;&?:]PWW.IE^X?
M7I?<YM0=CKOM+S9+SJB:EOJ%I?Y^EKZLF-1<1J_HGB^%U#9[;BDM5[9*\9Q1
M->T-"GN#/5M,,IAKT^Y:[<^M-6.1LAITAM4T>%P8/'86:I3H4+_"<(2VRW(
M,A,?\E92@F^;2[?@HW7:\YQ!-3V>%!Y/G$6Z@!8,TE8<1VQNL^2.KVPX9UA-
M4Z>%J=/]>N:$RU $)F&8EK-.*SN4-BFB,D<XXVOZQ-TRI7;W<SH.E<\B],B9
M1&.X:,^O;K'_YK',HCNLKL<M;,#_RV/>J-4NW7)?B-6C,ZBN1U)Z),[<7TPU
M^V?^7/% J?]0:F_]E^B#G6RQ\7_/YZ'2D$XTNF6Q=;SN$II.1H_H9OSY"+UC
M\?(C&EV/O(?[N]LK;XJ\N_O)D=5]$^2#2_3!;GC)W7O0R25T\"O@VQ?T&W^U
M^G=+=<T?I7U*K3Z;P"%<\A!V4TSN<QQ&'-VNXB<NK0[=(KC=HR=V=TW0$"YQ
M"+L9)G?WP%[050!-&<Y"/QO*#J]N2=QK8WIRC(^QU6\3<(1+.L)[XI$O)%!?
M:O4]FFI(M$A(Y(D5=&?HU2*P#V2W^NVCU7(3K(1+6,)NVLG)[TVV=<'%#KEV
MNSMHTZ[5:!/\A$N PF[NV<Q(N=\,Z\-DGC9O1=IU*U:PKSNJID]2\A-Q(T_N
M<[K@400]-5ZRQ#KK[I"II&!W7%U[)3H1-^ML3;@P(*&3SH6T^W/KW(JDS7R?
M@PR(!)F@U6\3&$5*C").3"F:,V;0G)<K!;>5M;/NT*E:;KO#ZMHK*8GL14FC
MF,NY&8R?04$OG/W6+5C=;YL (E("$>GM@\.>2#0LO WQ*Y$D/-H)Q>1 @)/7
M0A.X1$I<(GOATD40@+IZOSE :1W<)=:,LT.24(HN87 H#5ARL>9)13]O@J1(
M25)D+Y(JC'OF#)#B03PG5M-NN2F#64O,V0_3I81A8\U#;HFZCDN6(GNQ5.&X
MH*B)%.LP\>UM78>@W$%UC98$1=S(\[W1B5 :2.JO<%D)BCL4,3D9#*Q.FT H
M4B(4.=UG#ILL!(S6,2P*LE6 VCV''0B)\EIH K!H"5C434;IT+V0G%4V[PZ!
M/CZQ_E31!%C1$JRH&XBN1?HF*FW;ZM7=#A'2Z[=[O:Z5_]VA=?V5($7W>A]U
M'2I#_;O[+#WHRZA#J;TUO_4[G)N*'D(=P>0[0YC\_/0+FG)_):$VK+[=2D!F
M,23:J1;^5_33$:5MW*%H":O&-8OLJ=>M6-=[25[4_?[H0;(@7>>]QD\BLEK>
M\2YK.K'::@*E:(E2U,T]FS9$HQ=_P9(YKWR_N$/H]G$ZNK@9W5L]-D%-M*0F
MNA<U;?<Y (GTQW9TM]*09Q/3M%;3!Z*?O!XRM7ZJ9C9WK(?D^'1PW(>9?+UM
ML;.UF<"L:=(]%@KYYLU1MJ^@N%KLX[A(=R]TRL>S32 WS"R)%(KX#$*[1\?P
M[3+;5Y&=:+%,MR8\":U%G!XN. NX- _ _9D0>G-BOJ#8W3+\%U!+ P04
M" !!@$Q:+W#'HJ0'  "K'@  &    'AL+W=O<FMS:&5E=',O<VAE970R+GAM
M;*U9;6_;.!+^*X1WL=L%G)JO>DD3 ZF3Q7JOU^3B=!?WD9&96*A>7(F*F_OU
M-Y1=RQ8I-KU+@;:2/1P_0\W,\PQUMBFKS_5**8V^YEE1GX]66J]/)Y,Z6:E<
MUF_+M2K@FX>RRJ6&V^IQ4J\K)9?MHCR;4(R#22[38C0]:S^[J:9G9:.SM% W
M%:J;/)?5\WN5E9OS$1E]^^ V?5QI\\%D>K:6CVJA]*?U305WD[V799JKHD[+
M E7JX7QT04YG+#0+6HN_4K6I#ZZ1">6^+#^;F_GR?(0-(I6I1!L7$OY[4C.5
M9<83X/BR<SK:_Z99>'C]S?OO;? 0S+VLU:S,_DZ7>G4^BD9HJ1YDD^G;<O.'
MV@4DC+^DS.KV7[39V>(12II:E_EN,2#(TV+[O_RZVXB#!80/+*"[!?2E"]AN
M 6L#W2)KP[J46D[/JG*#*F,-WLQ%NS?M:H@F+<QC7.@*ODUAG9Z^EYDL$H46
MQD.-3M"GQ25Z\_-O9Q,-WHW-)-EY>K_U1 <\7:KD+6)DC"BFW+%\YE_^9U/
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
MXHM15LC03 CN690QG,^4LC.@C^.>X*ZT0K- <)!24IV@[#>4_<$N\]FL=3Y
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
M*Y$N15$WD+]_R//JYXOZ\YY/'VI^\W]02P,$%     @ 08!,6J!7U37X @
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
M^S3 26146\N!>N3'T5S/27MNIVYN=QC!]<3EA&_R<.P!KL@(@2E(81Q+Z,R
M2WO2IHFSVC[NMMN\><S*<O28;GBV:[N3K@Q#%]T^DX?TM===9UOP[KI[(6WC
M)X9](^"?'?B'LYJPQNVH8_A,,*2)AZ?'$A:YR"/#7J!%N1P\)2]X]=R\/%"C
MYB"M??[<W>U>4+AK'LM/[G_!U_?M:P:]FO:MA]]8!1E5HYRO0:7W.8*]5+4O
M$K0?E-PVS^*?I%*R:"XWG&6\T@+P_5I*=?J@?Z![G6/U?U!+ P04    " !!
M@$Q:6%>^B<@%   C#0  &    'AL+W=O<FMS:&5E=',O<VAE970X+GAM;)57
MVV[<-A!]UU<,-D#: .N]V;D@O@"VDZ)IX=:(F_:AZ -7&JT82Z1"4E[OW_<,
MJ=5N#-MH7VR1G#D\,YPYY)ZLK;OU%7.@^Z8V_G14A="^GTY]7G&C_,2V;+!2
M6M>H@*%;37WK6!71J:FGB]GLS;11VHS.3N+<M3L[L5VHM>%K1[YK&N4V%US;
M]>EH/MI.?-:K*LC$].RD52N^X?"EO78830>40C=LO+:&')>GH_/Y^XLCL8\&
M?VI>^[UODDB6UM[*X%-Q.IH)(:XY#X*@\.^.+[FN!0@TOO68HV%+<=S_WJ+_
M%&-'+$OE^=+6?^DB5*>C=R,JN%1='3[;]<_<Q_-:\');^_B7ULGV\'!$>>>#
M;7IG,&BT2?_5?9^'/8=WLR<<%KW#(O).&T66'U109R?.KLF)-=#D(X8:O4%.
M&SF4F^"PJN$7SBZ4UYYL2=>./9N@)%<GTP!H,9CF/<Q%@ED\ ?.&KJP)E:>/
MIN#B>_\I* V\%EM>%XMG 3]P/J'#^9@6L\71,WB'0YR'$>_P_\1)?Y\O?7"H
MC'\>"SDA'CV.*-WRWK<JY]-1*YCNCD=G+U_,W\R.G^%[-/ ]>@[]OY_+\S"_
MV< TG]#CX7\R%"HFVVHC0RPWRJ 5T70AKJ@\MTVKS$:;5=89U14Z<$&E-LKD
M6M7D@13-/>4H (@ J;HF57Q%Z:;Y'[& S0,@9 <CO52CG_/..9G;LWU%AG/V
M'NI T!M25"KMJ-WCG %"F&$*?>>CF>_RBEIVVA9^0G\\6 5[TB9@N>F-2#D&
MCS#LIFLQ*72N1"+HP1;!TI*)[UL(B00/3"QG98= 2^US1+-AY29TR2YF0)LD
MEE%UC'C88.0@"EC7UG= [O,0-\[K#DV#C\<3B_!;,(X&<B"N@ U#)T)%7XP<
M2'8CUIY6;-A%4-AQ*VS%H3,Q^2W2G>NVAF&E$.:2V<BI%9!86"(LV^@ IY3#
MM&V*(F7$\^,$'7_K-&+*NIBL1MTB73CP)I*2#'SMBE6R#94*I,H2N>R3W%H7
MB3;",]:H\IZ#'U.MU5+7.FC&P/$=FZ['D\, :4S+R'&M!&*7WFQ B09[0!/Z
M70Z%K%E92<I2&F-,:S"^4W4''+*=>XK^N#\M\0R5]3SLC;A[AE+:=H5S0>+&
MF3:8#-;%&.!L&Z:@[K?4H>_Y[8%<*P5)JR&JF/$)W:#<=*ES07X(TC.0^^Y
MFX/66:GC""A=*(+FI5KZA7&VU];;,('TK5-(O:LWXSZ87=2=3_56, QP[:2
M&? ^""/A6F,M=@,K]-]V8V26/OJ6-W15KB;T4C7M,7V42]A9HW.?75K73EZ^
M>+>8OSV&.@BJC!:SX\ND-7$T/WY%7DFM+E5^6]M5*LJ\4F;%PFS'M5&;9RI*
M"FHO?S%)*V>]SY"=4@?!BI%!CB0_27:Z@"H:Y"+FM:N+7A*V+CW?>. NGH@B
MU%^20@S9Y!M:5^BR?AX2O$UH*IDE"XNE6M;<5[+RUF"X&>)#-U[M3D\J!3@X
MWEW\2'@%?45X(D72&@A4%$(0L7@'@;-H30O.#HJ:PW3;B$YDH-:HW")+.C=0
M8.H@#2XE1[N\:]#R@/7C[]01Z5U7&@4@FA=78DO%PH 22%9VW:^6>!<F1.7<
M)J;L8=]G#SIVQU0D6QZ>(M>J%4U$1DIGFSXTC\[-I<7/\]#%.R91E (I-"K$
M)>LD97O%'N-,%@()'EW32AOZ#%&(1,9N3I?+4RKHJU@B*86Q>>#XM3/I]1G5
M>J]H?@ MZ2743MSRN9MU>T-D<K=$O94*EZ.5ARG-9P>_;F^E>!,1RR.,?ND,
MT^$L/:%VMQ-VK!&A:$N4FI2?W8W0J(*E-D.\ S1P(^; +-MC%I7 I).WW[51
M]-F_N">//8JF>P_7AMTJ/L^E?U 2Z0T[S Z_ ,[3PW=GGGX^7"FWT@BFYA*N
ML\G;UR-RZ4F>!L&V\1F\M &/ZOA9X:#8B0'6Y9;>#F2#X7?1V;]02P,$%
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
M)BC6Y3_P )+('..:IGV4AN.&"-[?O_LB_FZI9TXN7[T2'YL1^2=83.]H1G-
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
M5"L4_CI<9G&IHY(E7RX0T0UZNKI!E<OB6VUV-"6O?, H!1":F7QA?49"/6H
M/)UGXRE19$V5#&N,L?5X!M+D8T,/G"4DQCM<_$GK6:#=1S%=CI>_HT,PO;@1
ML]5X/BR7-\GJ]' 5AN)L30>@$:6XA=O!/U@GU4BEZ[NNUG G3JK ?(+ H>?K
M=.!*<H&^(91]K8;;4+ANQ NE:E$@"D(HD:B+* -G<5\F6X1!T W46$?$3VQ0
M2.2<E.'O$!.^'8>;\/BEU[+)V>LQYOJ./P+090R7\O"F?-P]?F?X%%ZO3\?#
M1XJ?I05H*H,M1+/Q:C$*EYIAX4W'+]L;XW&)X)^5DF Z.H#G6X-WM[@@ \>O
M+_?_!5!+ P04    " !!@$Q:Z;BR:Q8%  "Y#   &0   'AL+W=O<FMS:&5E
M=',O<VAE970Q-"YX;6RE5]M.&TD0??=7E!PI2B36-L8$E@ 2Y**P4B*$DUVM
M5OO0GBE[6NGIGG3W /[[/=4]-D9Q'';W 9A+U:E3MS/-Z9WS7T/%'.F^-C:<
M]:L8FY/A,!05URH,7,,6;^;.URKBUB^&H?&LRN14F^%X-'HUK)6V_?/3].S:
MGY^Z-AIM^=I3:.M:^>4E&W=WUM_OKQ[<Z$45Y<'P_+11"YYR_-)<>]P-URBE
MKMD&[2QYGI_U+_9/+B=BGPQ^UWP7-JY),IDY]U5NKLJS_D@(L>$B"H+"GUM^
MP\8($&A\ZS#[ZY#BN'F]0G^?<D<N,Q7XC3-_Z#)69_WC/I4\5ZV)-^[N W?Y
M' I>X4Q(O^DNVTY@7+0ANKIS!H-:V_Q7W7=UV' X'OW 8=PYC!/O'"BQ?*NB
M.C_U[HZ\6 --+E*JR1ODM)6F3*/'6PV_>'[#!=MHEG050LLE712%:VW4=D'3
MJ&RI?!E.AQ&1Q'Y8=*B7&77\ ]17]-'96 5Z9TLN'_L/P7!-<[RB>3G>"?B6
MBP$=[._1>#2>[, [6*=]D/ ._D?:]-?%+$2/N?E[6P5R@,GV +)+)Z%1!9_U
ML2R!_2WWSY\_VW\U>KV#_F1-?[(+_3]W;3?J)Q>9C@;TI.)DH\UWU]Y97!>,
MG8V!@$9_0E4N2M=$H%Q90A>YGK&7+A[LT?N+Z27I+L;T2WKZR^C7/7K^['@\
M'KV^LH6KN?=9W7.@%Y]=HPLZFHQ>GM!5W7AWVP6*CK(EP9+>ZE 8%UH4?2_A
M[+\6"[:5 C6*%7Z\LNB-9ULL"?E@BPN=5*8-/&^-Y1#(S4GG^!&HY0/J@#X#
M0R%VF>-KN\F>A)DNF?0FQ\9K:)Y&33T;)>4 )^'B<8-GA;.%-EIEI0*E')MB
MRKU1NNQIFR58+/#6M-@LB?U@^3W+-ZYNE%U"&5M3TDPB?6NUS^$[:^12EEI@
ME:'-()X7Z+1T=LW/+GHZ<AT(,+ &B/.TP,<@HJD1%:8Y-)8:]FDX4,.8:B4C
M0J#9M)+Z;$DU1%,W9BGHV \AW^7Q I3"2[%)KDUC=*%FABE$%=OH_%)2[4G=
M!C35M3;*F^5>LGY:NM^5EEY83F3Q06@M9AOY,O(H7SXMSY[DZ6(JWY.A?S9&
M&$_B^9S35XO0E5P/:X40 FLG&2ZTM5+#WUJS[&5Y/!S0.RD)VHK%2],2Q*'6
M48HO2!W*7%OLA,:5U':U396*5"G$M%C@)=C/F.UJ3>%<*PRWNE4HO+1%\.2E
M;%?*J;?N@C:&^%:95F9<V&,EH*92CLU,A2$";V,S$-7X)%OTH!H"M%TYCM;*
M,>6%^/=NN'$^B5,G'^/C;?*1S5(ZG>=6&;FK=%&M]CM0VY3@F0!D2C182ZMD
M>W$/3>P>^#5Z+W3H#XNZ&M'$9:];;"'<"5:YN=2D9CA74= +J^=8"R"M$/D>
MQ[0@)ED\,*LAZ0,F5M<_#-C#;B*80U']3Y3M:,M(S@&+ABU9^; QC6HN>[)6
M^_W#O:YWF5RFE&<X8$QBI6WO7T%-=LYXCA,?YQ*JE2@D34%M(#O>A2:G8Y9Y
M>-> CX;T2/!E'Z3,12??:4G4HVZL!MRFZ-LG>E.7@5JTWN>O;;<J(K*/EP7U
M070<<!>M+M-7;.?*_/3+O/HB?W*6MQU&AAO'R9K](AV:P53@\LER_71]+K_(
MQ]$'\WRH_Z@\.AG(\!RNH\'189]\/BCGF^B:=#B=N8BC;KJL\+\%>S' ^[G#
MH:2[D0#K_U;._P%02P,$%     @ 08!,6D5XQFFE!0  A0T  !D   !X;"]W
M;W)K<VAE971S+W-H965T,34N>&ULI5=M;]LV$/ZN7W%P@ZX%9%N29=G)D@!.
MFF(;T#6HV^W#L ^T=+:(2*1*4G;\[W>D+-E.G.SMB\V7N^>>.]X=J<N-5 \Z
M1S3P6!9"7_5R8ZJ+X5"G.99,#V2%@G:64I7,T%2MAKI2R#*G5!;#* B28<FX
MZ%U?NK5[=7TI:U-P@?<*=%V63&UOL)";JU[8:Q>^\%5N[,+P^K)B*YRC^5;=
M*YH-.Y2,ER@TEP(4+J]ZL_#B)K;R3N WCAM], ;KR4+*!SOY.;OJ!980%I@:
MB\#H;XVW6!06B&A\WV'V.I-6\7#<HG]TOI,O"Z;Q5A:_\\SD5[UI#S)<LKHP
M7^3F)]SY,[9XJ2RT^X5-(QN3Q;361I8[99J77#3_['$7AP.%:?""0K13B!SO
MQI!C^8$9=GVIY :4E28T.W"N.FTBQX4]E+E1M,M)SUS?E54AMX@P-S)]@,\;
M@4KGO(+[@HG+H2$35G"8[N!N&KCH!;@$/DEA<@UW(L/L6'](U#I^4<OO)GH5
M\ .F QB%/D1!%+^"-^K\'3F\T7_Q%_Z8+;11E"E_GG*]08Y/(]OJN= 52_&J
M1^6A4:VQ=_WV39@$/[[".^YXQZ^A__MS>AWN5VD0I@-H8;V3X?B:(]S*LF)B
M"[J20DNE@4&!:U14L1E@RTI;=4]VZI55?V=(OW<W_WS?>P\F9P9229H$410@
MI*B%K<L60\,FEZZ&(?2#( "IH)0*(9<UZ52H8(M, 1,9,%K>Z65 &+_4 KU1
M,#AB7+(' F5"U*P@R\(HOJAM*]!@)%ANEAK@=[M_L/*#IK)>&+!'R%,D=S6M
M\#7/4&3:FJL%>2!39LBZSHF,IOZ4(K67S%ML.Z !S,C1?ZH)!YK.P5K3(O&J
MV/:(T  ^'$+N 9UF@^I9 $*6BLH0F#TUA5G==$*YI(FAAFU/D"G!Q4H35^W,
M.TO<TJH8S_R698-7(+.DW!%T9HEBTUOW1^F[3IEY9,QB5DI64K6VCX)KC0!O
MQ.SQ'A\A2U-9"Z.!;A_@].]<Y,)MJ(P)0MAPD\/'V?P&9O-;F(33?DR),',"
MY%FQ]3T+OO.CJE6:.R>>AIL<)HY-M+X)&Y?CD+8L%ZQP=EW/U2X6#M]0,.BV
MHB7RD6R(5:/C2B.714:9__;-- HG/WJ4<]QL7<Q/Q9><3659<D-T^D;V%]AO
M]WQGK(U/PUE;:;JE-7,AQD<[QN/$3FNEB!RPIG2I.-0#&J]2]A"(\#Y$_MZE
MAMJ"TJ@DH=J0C\+&U!U'FSE]JLR^$X5W=_?S]XY,;1P72BL7P9/\-A3HLS 9
M^4$R\:S-L_/8#R=CAV[MFUPA]DM[H=CRYY(2'NV] G0K8+F@CM#>#(XS#48^
MQ417Z/*QV/ZM^6B:^%$2.?6S<#KR1TGLM?8U?_R?UK^V"=:>LDN.5M][I@\;
MI# RF^]47AM]X3VW]71EY,V>MI31=.PG<0AQ'/C3(/1N7TBF5CXDL=$80NJ[
MT\#[)I[NTPO/3\811%'DCY.Q]U4:RJS=9H[%<3&-SR=^&$TAF<1^'"?>1\85
MK%E1NT2KGZ&?0>('\3E9F-*84B )_?,D>=++J1D8,/0>M E)8:8*4DWSH2+8
M%;77AMGLV52,&D_*"<6TY>>T49M6KM%J-Y>6;E,>#6OJM[6R6=_EI#LOR@XH
MF\?.<5H\/];CHLVHXPEI#GAWS4GAFLM:%]MG43W()>92HZG!@J_XHL C+UW)
MT]WGT7U:[+#)J#ZX_Y9*E@[:7?-4%#9I^9*GD%$>Z5,==M?'UUSOVGBK/H#Y
M:Q8L92_;!_#%L#VO)G*$\HQ$DK$?GX=N/:;\&$^Z5G54;J>>6<.#IW&):N4^
M &S#I&NE>25WJ]TWQJQY6N_%FP^43TRM.+E6X))4@\%DW /5//J;B9&5>V@O
MI*%GNQOF])V$R@K0_E+2JVLWL0:Z+Z_KOP!02P,$%     @ 08!,6CA@Z<Y_
M @  N <  !D   !X;"]W;W)K<VAE971S+W-H965T,38N>&ULK55M;]HP$/XK
M5C9-G;3AO/&Z$*D0JE5:)U34[;-)#A(UL3/;0/OO9SLA@S9%J.,+\9V?YSG?
MV=P%.\8?10H@T5.14S&V4BG+$<8B3J$@HL-*H&IGQ7A!I#+Y&HN2 TD,J<BQ
M:]L]7)",6F%@?',>!FPC\XS"G".Q*0K"GR>0L]W8<JR]XSY;IU([<!B49 T+
MD _EG"L+-RI)5@ 5&:.(PVIL73NCF:_Q!O K@YTX6".=R9*Q1VW<)F/+U@>"
M'&*I%8CZ;&$*>:Z%U#'^U)I6$U(3#]=[]1N3N\IE201,6?X[2V0ZM@862F!%
M-KF\9[OO4.?3U7HQRX7Y1;L*Z]L6BC="LJ(FJQ,4&:V^Y*FNPP%!Z;03W)K@
MOB3X;Q"\FN"=&\&O"?ZY$;HUP:2.J]Q-X2(B21APMD-<HY6:7ICJ&[:J5T;U
M.UE(KG8SQ9/AG#RCK4!SX.;-T1A0E(DX9V+# 7U%#XL(77W\'&"I@FD*CFOA
M227LOB'LH3M&92K0C":0M/"CT_S>"3Y623:9NOM,)^Y)P0CB#O*<+\BU7;_E
M/-/SZ5Y;.O\7??;NZ$?%\)IK]XR>]YYK;[OL2LYOE]/-;"1*$L/84MU* -^"
M%7[ZX/3L;VV5OJ18=$FQV87$CN[$;^[$/Z4>_E13X9;&K !T]8,)T?JGJR1Z
M1D+/@&WH#.V!/QP&>'M8XA9<?]CU^O8Q+GJ-\[IV;^#TCG&SUSAW,!@.';_!
M53GC@U94 %^;&2!0S#945L^S\39CYMITUQ?^B3.:.BW^2(VE:HK\DZ]FVAWA
MZXP*E,-*A;([?=4I>34G*D.RTC3")9.JK9IEJD8K< U0^RO&Y-[0 9IA'?X%
M4$L#!!0    ( $& 3%HL=6B^0P(  (H&   9    >&PO=V]R:W-H965T<R]S
M:&5E=#$W+GAM;)V56V^;,!2 _XK%I#VUX9;+E@%2TFY:'CI%:;<].W  J\9F
MM@GMOZ]M",NFA$IY =N<\_D[1ARBEHMG60(H]%)1)F.G5*I>NJY,2ZBPG/ :
MF'Z2<U%AI:>B<&4M &<VJ:)NX'ESM\*$.4EDU[8BB7BC*&&P%4@V587%ZQHH
M;V/'=XX+.U*4RBRX253C AY!_:RW0L_<@9*1"I@DG"$!>>RL_.5Z8>)MP"\"
MK3P9(U/)GO-G,]EDL>,9(:"0*D/ ^G: .Z#4@+3&GY[I#%N:Q-/QD?[-UJYK
MV6,)=YS^)IDJ8^>3@S+(<4/5CK??H:]G9G@II])>4=O%AI\=E#92\:I/U@85
M8=T=O_3G<)*@.><3@CXAL-[=1M;R'BN<1(*W2)AH33,#6ZK-UG*$F9?RJ(1^
M2G2>2C;Z>#,0Z$G@C+ "K83 K !][$I&KM([F#@W[6GKCA9<H(7H@3-52O25
M99#]F^]JLT$O..JM@U'@/:03%/HW*/""Z0@O',H-+2^\P#M7Y@W:OZ(-R\B!
M9 VFYZKNH-/S4//=+&6-4X@=_6%($ =PDH\?_+GW941Y.BA/Q^C)KJ& ?&\_
MN_5/M=$JX[7Z_Y [W7%@CJF$$;'9(#8;Y?S@[/8*N7'H>W+S06Y^U:D]@=!?
M$;[@-LY\SVTQN"VN/KAQOW'N13_WI#]4( K;!25*><-4URJ&U:'1KKK^\C>\
MZ](/6!2$240AUZG>9*%?I^@Z7S=1O+;=9L^5[EUV6.J?!0@3H)_GG*OCQ&PP
M_'Z2-U!+ P04    " !!@$Q:3 *_%10$  !&"@  &0   'AL+W=O<FMS:&5E
M=',O<VAE970Q."YX;6R55FUOVS80_JY?0:A%T0),]/Z6V@:<9.DZ-%A0)QV&
M81]HZ6QKE42/I.)ZOWY'RI*=Q7.;+R*/O'ONN2./NM&&BZ]R!:#(M[IJY-A>
M*;6^<!R9KZ!F\IROH<&=!1<U4RB*I2/7 EAAC.K*\5TW=FI6-O9D9-;NQ&3$
M6U65#=P)(MNZ9F)["17?C&W/[A<^E\N5T@O.9+1F2YB!>EC?"92< :4H:VAD
MR1LB8#&VI][%9:3UC<*7$C;R8$YT)'/.OVKA8S&V74T(*LB51F X/,(55)4&
M0AI_[S#MP:4V/)SWZ#<F=HQESB1<\>JWLE"KL9W:I( %:ROUF6]^AET\AF#.
M*VF^9+/3=6V2MU+Q>F>,#.JRZ4;V;9>''S'P=P:^X=TY,BROF6*3D> ;(K0V
MHNF)"=58([FRT8<R4P)W2[13DX_-(TB%659D!GDK2E6")&_OV;P"^6[D*/2A
M-9U\AW?9X?G_@Q>36]ZHE20_-0443^T=Y#80]'N"E_Y)P&O(STG@4>*[?G@"
M+Q@"#@Q>\** _YC.I1)X1?X\%G*'&!Y'U&5S(=<LA[&-=2%!/((]>?/*B]WW
M)_B& ]_P%/IDAF58M!40OB!77"I*/@@N)7EHL :K\A\HR >L/7ED_1/*&!MK
M"G+#2D&^L*HU.--'5E;ZA,_P9I_-&*)?P_PP(<>R<)+G\2S<KX#DAO32D&OW
MY)8=Z6?KU9[T DE;CSUI-I#&I^A,:M*%)BWWISC?8FG\Q46_MB5JNP;"%(:7
M0ST',=PDX^"7M@$2N/V*0%5)%KS"ETI>6%T^S=>:UEPHP^\@OP=3G5]+'T]W
M&'WJ3<:M9\ZM*T"T19DSA4H86P%K+DM%7A,OHZZ?4M=U47CS*O4]__V3V5[!
MNFV;,B_7K")SWA22>-0+0AHF,8EHDB7D;4##*"/OS$9,4R^T'LYGY^0>:<M6
M;,F\K"I),M2.8A+0#&UZ1UF&BX%USQ7"E_N:.<CV:XR%^E%*_<!' 0VR$,?!
M:[<?AS2*$^M)JD_%G] X\D[%/R@\BS]Q,3?H.J(I'B?R"+P >22>1Z/$/1I[
MY"'%--4)2X+!2^3%U(V][T3OI31-7!J$B1;01Y9TX7=N=PHIC0./G'@(HN$A
MB%[P$#3FM6J1WBU3/:<GI;UX06F?]'R\M*?&W0_4%25J!98 W2&4S1+?@SWW
M^@GW'ZCP#?RG2'\')B11O$_#UOH$6+5JQ1KR*[)0W-*#5B,W^/\GG8$YV2.%
M.7U.P9RCIV^$G^H[3;TPI5&0G;K?QV$2FJ89C5)3+3ASP^S[M\0Y^+?7():F
M@Y&8Q;91W6]^6!V:I&G7&^S5NP[KEHFE?IPJ6*"I>Y[@L8NN:^D$Q=>F4YAS
MA7V'F:ZPT0.A%7!_P;GJ!>U@:!TG_P)02P,$%     @ 08!,6NK.IRR3 P
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
M5WA!-,T5WLBIT $XON!<-1V=H+WCC_\%4$L#!!0    ( $& 3%ID/(,?OP(
M  4&   9    >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;)U436_;, R]YU<0
MWC!L@%M_NVF6!$CZ@>U0-&C:[3#L(-M,;%26/$FNVW\_R8Z]K$MSV"4FJ<?'
M1RGDM.'B4>:("IY+RN3,RI6J)HXCTQQ+(D]YA4R?;+@HB=*NV#JR$DBR-JFD
MCN^ZL5.2@EGS:1M;B?F4UXH6#%<"9%V61+PLD?)F9GE6'[@KMKDR 6<^K<@6
MUZ@>JI70GC.P9$6)3!:<@<#-S%IXDV5H\"W@6X&-W+/!=))P_FB<K]G,<HT@
MI)@JPT#TYPDOD%)#I&7\VG%:0TF3N&_W[-=M[[J7A$B\X/1[D:E\9HTMR'!#
M:JKN>/,%=_U$AB_E5+:_T'384%=,:ZEXN4O6?EFP[DN>=_>PES!VWTCP=PE^
MJ[LKU*J\)(K,IX(W( Q:LQFC;;7-UN(*9AYEK80^+72>FE^5%>4OB+!6/'V$
MVX:AD'E1P8H2!A_O24)1?IHZ2M<R&4ZZXUUVO/X;O#'<<*9R"5<LP^SO?$=K
M'(3ZO="E?Y3P$M-3"#P;?-</C_ %0^-!RQ?\5^,_%HE40O]E?AYJO6,.#S.;
M,9K(BJ0XL_2<2!1/:,T_O/-B]_,1W>&@.SS&/E_KL<QJBL W<+6^7<$Z)[K*
M(9E'B0[+O,^Q8Y4M*Q!IZNB[QS)!,>KO'PC+C!% @P(-:L.IGF\Y&?78X:W@
M=208+30V)0JSODPPCNPX]" ,77OL>J,+7I:%TH 3Q4\2/!%ZBO7H#7A/PX((
M/,]VQ^[H@;T^URO)CB,??-^WHS@:W7-%:'^8(\T@>0'5]QJ=G]F>/X;X++3#
M,!Y=DT+ $Z%U>\GU/^SO(;;=\%Q7&&L[M+W8L\_C& Z]KK,WFB6*;;N )*2\
M9JJ;TB$Z[+A%-]I_X-V"O"%B6S )%#<ZU3T]BRP0W=+I',6K=M 3KO3::,U<
M[VD4!J#/-YRKWC$%ALT__PU02P,$%     @ 08!,6MN@W]]S!   8A<  !D
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
MC4%E#>C]6DISG-@-NHM1^B]02P,$%     @ 08!,6@>0QWW[!   JAD  !D
M  !X;"]W;W)K<VAE971S+W-H965T,C@N>&ULK9E=<^(V%(;_BL;=Z>S.[&)+
M-@928 :2M-W.I,V$;O9BIQ?"%N#&MEA)AF2F/[Z2;6Q89!$';L ?TCEZCHZ.
M7\O#+65/?$6( ,])G/*1M1)B?67;/%B1!/,.79-4WEE0EF A3]G2YFM&<)AW
M2F(;.8YO)SA*K?$POW;/QD.:B3A*R3T#/$L2S%ZF)*;;D06MW86':+D2ZH(]
M'J[QDLR(^+*^9_+,KJR$44)2'M$4,+(861-X=8T\U2%O\1B1+=\[!@IE3NF3
M.OD<CBQ'C8C$)!#*!)9_&W)-XEA9DN/X7AJU*I^JX_[QSOJO.;R$F6-.KFG\
M-0K%:F3U+1"2!<YB\4"WOY,2J*OL!33F^2_8EFT="P09%S0I.\L1)%%:_./G
M,A![';RF#JCL@%[;P2T[N#EH,;(<ZP8+/!XRN@5,M9;6U$$>F[RWI(E2-8TS
MP>3=2/83XYF@P1.8RD"$X)HF,CLXSN/["<QDRH193 !=@*+97^O\UD2%/A(O
MX/T-$3B*^0?9^O9[IBZ53;[=D61.V#]#6\A!*E=V4 [HNA@0:AB0#^YH*E8<
MW*8A"0_[VQ*N(D0[PBDR&OPCBSO @1\!<I 'OLQNP/MW'\ [8 .^PHSP\D\W
M4K/A&Q)T@-O2\ &"6TV2FWMRFR;IY$Q\F\RY8')-Z"(^+:Q[>NNJ4%SQ-0[(
MR)*5@!.V(=;XYY^@[_RB"\J%C!T$PJL"X9FLC__,5%;E82A"/,OF_\J"  0M
M0_(1_,9P*F0V_]<\L5.CE[8!*8QU<V.J:F[&/;_K.$-[HR'M5J1=(^G7O/Y(
MC,F&,%E/P>TS84'$";AG44#V,>N,TZ$:W;1%+8SU]E 1['3[>E2_0O7;H3X0
M]?R)TJ6L2&F>U1F.P=^$)16VCM3HI2VI><@#\$(PX\ '25&L>B#$+Z:EWJN"
MT3L[PW>I8,YQHY^VX>@=Y?@G'_6;DKQ?P?;/2_)]4G.:&QVUI>T?I3GL=?H#
M/>R@@AU<+LTK<!VKT4];UC<8 X8\ATXM/)RS,UTJM06)5- H ^1Y';$326_V
MV38VI;6#M&^L['!/<L'STKX!V[P"S$Y;H\/C->!WNEX#.ZK9T>56@2X.6G2C
MS];H;[!F7!*US(-&\?2ZXI^&*EC&1> >I:V+D-/UJ\DK037MW"[::W?(4:LT
M:)9II^OZ#N)$2GO'2=CO>/!'#DVS00>Y#1BU!(,M-9BQ8N=(6@JS%[_4$KV=
MED :+5&"OLX2A#M34&?K,!JU2H-FS3-9+AE98D' 9\D>R1?Y #SB.#N83BW_
M&X09T.(7AOS]?/5]Z*%>PTS7H@N>K[H>":\KD;PGC^7=C;QJ7HP7U6'P6(BY
MR''Z3;E>*S%XIA0SXI]8QA<59U"CS@8=V*#.8"W/X 7U67,TM &XJ&([P5%5
M <=44 ZW4FK1ALRBS5 $S FB"XO95]NPE-8.JD/7Z;D^U&<&JO4:,NNU%N]D
M>!X38SDPNVK-#(_* >P[;M,3'-4R#;64:0UO9B6O>?V;?;5F1MJG?1-R+;Z0
M67R]Y?U,X6N)+[KC=F+@W=V"+];[*Y9[+>206<B9GOF'":"-PD6WV4IK_L&\
M^Q[R?MQ^LO=VPQ/"EOE' @X"FJ6BV!BOKE8?(B;Y]KM=-R^^8MQAMI34("8+
MV=7I].1*8\6'@>)$T'6^MSZG0M D/UP1'!*F&LC["TK%[D0YJ#[/C/\'4$L#
M!!0    ( $& 3%K-!&GV2P,  %,+   9    >&PO=V]R:W-H965T<R]S:&5E
M=#(Y+GAM;+66VV[;.!"&7X70+HH6:*RC#TEM 7&R/5RT#6IL>E'T@I;&EC82
MJ24I.P7Z\!V2BNQL)05;N#>6*'%FOO\W1<Y\S\6=S  4N2\+)A=.IE1UX;HR
MR:"D<L0K8/AFPT5)%0[%UI65 )J:H+)P \^;N"7-F1//S;,;$<]YK8J<P8T@
MLBY+*KXMH>#[A>,[#P\^Y=M,Z0=N/*_H%E:@_JYN!([<-DN:E\!DSAD1L%DX
ME_[%T@]U@)EQF\->'MT3+67-^9T>O$L7CJ>)H(!$Z104+SNX@J+0F9#CWR:I
MT];4@<?W#]E?&_$H9DTE7/'B<YZJ;.',')+"AM:%^L3W;Z$1--;Y$EY(\TOV
MS5S/(4DM%2^;8"0H<V:O]+XQXB@@#'H"@B8@,-RVD*&\IHK&<\'W1.C9F$W?
M&*DF&N%RIO^5E1+X-L<X%:\43^[($G6EY(J7^&=+:NPZ(RM< 6E= .$;<I51
MM@5)<D8^<'9V"U)A@ W^6.D 29Y?@Z)Y(5_,785D.K^;-!1+2Q'T4$S(>\Y4
M)LE?+(7T<;R+BEI9P8.L93"8\!J2$0G]ER3P@HC\25PB,RI0@+T,5 A;XT)3
M(>PS[G^Z\^5R+97 1?BURQY;*^JNI;_,"UG1!!8.?GH2Q Z<^-D?_L1[-: D
M:I5$0]GCSV;E(O"'NER#T()6UJQ5O?X'OQZB>"/CI=&WL_J6L,T9R]F6?.^T
MU2JSM<>FMMXB=K$?34//F[N[#N9QRSP>9+[<@<!-@[P1E"F"*Q_(:YH+<DN+
M&LCS"F58XA>]R(=%T85MRT^/L*.1/^Z&GK30D],9;93AW"%O)S]Y.YV,^ZR=
MMI33DUE[@!QVTU:<'8&.1U$WYJS%G)W.S.:+'/)R]I.79Y-9U&?F>4MY?C(S
M6\AA+\^[5J;?C>E[AV/ .YV=>!YN(->SN2!P7^7B"7.;XH_<[5VH_M'9Y9_,
MW1[F8:^;^H_-]L(>[N# '?R6'1=/QZ>VVZ;RH_UV')WW>GTX[OS!,^A7=]P6
M^0FCPPZCI[/_0+M'?4X)8FNZ.4D27C-E6Y[V:=LQ7MH^Z3#=MIOOJ<"C0)("
M-ACJC:;HF+ =G!TH7IFN:<T5]F#F-L.N%X2>@.\WG*N'@2[0]M'Q#U!+ P04
M    " !!@$Q:CA,32C\#  !&"@  &0   'AL+W=O<FMS:&5E=',O<VAE970S
M,"YX;6RM5FUOTS 0_BM60 BDL21.\]+11AJM$" A31LO'Q ?W/3:6CAQL*_K
M^N^QG2YT31;!1#\T=GS/W?-<SO9-=E+]U!L )'>EJ/34VR#6%[ZOBPV43)_+
M&BJSLI*J9&BF:NWK6@%;.E I?!H$B5\R7GGYQ+V[4OE$;E'P"JX4T=NR9&K_
M%H3<3;W0NW]QS=<;M"_\?%*S-=P ?JFOE)GYK9<E+Z'27%9$P6KJ7887LS"P
M &?QE<-.'XV)E;*0\J>=?%A.O< R @$%6A?,/&YA!D)83X;'KX-3KXUI@<?C
M>^_OG'@C9L$TS*3XQI>XF7J91Y:P8EN!UW+W'@Z"8NNOD$*[?[)K;-/8(\56
MHRP/8,.@Y%7S9'>'1!P!PM$C 'H T+\%1 = Y(0VS)RL.4.63Y3<$66MC3<[
M<+EQ:*.&5_8SWJ RJ]S@,)_)LN1HO@MJPJHEF<D*>;6&JN"@R<LY(.-"OR*O
MR9>;.7GY_-7$1Q/6@OWB$.)M$X(^$F(.Q3F)PC-" SKJ@<^&X1^WE8$'#AX]
MA/M&;*N8MHJI\Q<]2?'WRX5&98KK1Y_0QO.HW[/=<1>Z9@5,/;.E-*A;\/(7
MS\(D>-,G^S\Y>Y"$J$U"-.0];T4C$9PMN.!HU9M]9;:Z1I,7LTK<8+$G A!!
MF>45*10L.1*V5@ NAWUI:F(G+K8]1V[S8.+?'FL?LG@@:-0*&@T*>K=M*+-2
M;BOL(]7@XZ.0T2BPOQ-J7;OTQ.X!P;@E& \2G,,*E$D>079'F-;02S+N!,^R
M+(CH"<?!4$\LG:05D@P*^2R1"7M2_H6<I"-G1&F6TE,]@Q&?J"=M]:2#>JZ4
MN1,5[L](+5B%9^Y0@%];7MOZ'BBHM"..1F&89MF)N*[=.(FC,>VOIZREG0W2
MOBP*2TR3FNW90D ?PZP3V?!+3PN^:T53&B>/U/NXY3<>+A-0YKIB[J[><=PL
M%=N9NI$+P=?N;1_A<>=8B),PBT_+9=S=HBD-X[2?<1C\N0N#0<[78!L?>XS<
M'XK[WNMNT,N_7@,';P.B&S7^T25O.ZQ/3*UYI<WAO#+ X-RV)*II6IH)RMK=
M^PN)IHMPPXUI]$!9 [.^DA+O)[:5:%O'_#=02P,$%     @ 08!,6D?0Y7%F
M!0  9"<  !D   !X;"]W;W)K<VAE971S+W-H965T,S$N>&ULK9I;;]LV%,>_
M"N$-0PML,4E=G3D&DDA".RQ8T"#;0[$'V69LH9+H4732#OOPHRZ6+)EEY/;D
M(=:%YW?$\Y<.Q2/.7[CX5&P9D^ASEN;%U60KY>YR.BU66Y;%Q07?L5R=>>(B
MBZ7:%9MIL1,L7E=&63JE&+O3+$[RR6)>';L7BSG?RS3)V;U Q3[+8O'EAJ7\
MY6I")H<#'Y+-5I8'IHOY+MZP!R8?=_="[4U;RCK)6%XD/$>"/5U-KLEE1&EI
M4+7X,V$OQ=$V*KNRY/Q3N?-^?37!Y16QE*UDB8C5SS.[96E:DM1U_-- )ZW/
MTO!X^T"/JLZKSBSC@MWR]*]D+;=7$W^"UNPIWJ?R W]YQYH..25OQ=.B^H]>
MZK:..T&K?2%YUABK*\B2O/Z-/S>!.#)0'+T!;0SHT,#^BH'5&%AC/=B-@3W6
M@],8.&,-W,; K6)?!ZN*=!#+>#$7_ 6)LK6BE1N57)6U"G"2EW?6@Q3J;*+L
MY.(#>V;YGJ$W 9-QDA9OT2_H\2% ;WY\.Y]*Y:!L-ETUL)L:1K\"L] =S^6V
M0&&^9FN-?6"V=PWV4]6QMG?TT+L;:@0&;'6!+/(SHIC:FNNY'6]NZ;KS?=[#
M[_,>F<U_V^?*'.N\]V)IM7>*5?&L5^Z4C[^K$^B]9%GQM^X6J2FVGE(FRLMB
M%Z_8U41EPH*)9S99_/0#<?&O.GT@80$D+(2$14"PGJYVJZMMHA]TU4E9&[J5
M83E$/2^(Y6+?L_%\^GPLDZ8AMC!U;-)O&)PVI#9VR,SQ^PU##='W/>PY3K]A
M9.S<-X;.:4/GC F=&F%7?),G_[(U6JD$)M1PB=(D7B9I(A-6Z$)K!)_[E$#"
M N=4(LOS"!XJ!.DT H+U5'1;%5VCBK<'R203F4XKH_FY6D'" G/'"/K"8J%+
M7I 7$0'!>MIYK7:>L8O7#[?(Q2[Z>,>R)1/: <E(.%<^2%@ "0LA81$0K*>I
MWVKJ@[QH^)"Z0L("2%@("8N 8#U=9ZVNLW%Y]I6AL:8X1P/0S/<<EWJ#EPZC
MMW,EFYV,>EJG(:332.,4VY9-:>NT%VB"NTD=/BLMHO_0'V+-!.("W0N^WM?3
M^IMX]2GE&V/V-'LZ]S$#I06@M!"4%D'1^G? T;2>@"31!@,E+R0M *6%H+0(
MBM:7EW;R4N,#_CZ7<;Y)EBE#<5$PJ4VD#:,WB:*8X/)OD$O-[LX6;K3C$-1Q
M!$7KJ])52(AQHKXXY-,XX_M<S2<X6AY/#JM2C*-5JN;.C@*&+XCK#E4"+8>,
M<QJ".HV@:'V%NEH',1<[QBCD:A6R-<&R/'NH$% YHE%HE-,0U&D$1>LKU)54
MB+FF,D8A3ZN0HPD6]DZ>(=!BR3BG(:C3"(K65Z@KEQ!S6>$5A;3:N+H;V3]Y
M>D"+(^.<AJ!.(RA:7YNN'$+,]9#'/)$%"EB:/#/!UL<3@#&E$C/][+=!T&()
M*"T$I450M+[J7<&$P%1,"&C)!)06@-)"4%H$1>O+V]5-B+EP8OA"0S0E!&IY
MKN\/4^MI5<57#8DS&*H"#9%X#L;D-'&>(HGMVM2=#5I&YOY]8_QH5PVAYFK(
M79*R0O*<%>AZM4U4-,].C&8/YSXYH+0 E!:"TB(H6E_YK@I"8:H@%+0* DH+
M0&DA*"V"HO7E[:H@U%P%,21&>EJ"L%6ZPPX=)$9-0XI=Q_(''YH#34/7<8AW
M,AW3N:;4Q^[@8WAD[MVYT9L>+0+*F-A4R[4*M"I?TNM5'NW1=DG8=;40:G#\
MAES>$LWQ@%R&]8*O#E^O/[N+Q2;)"Y2R)^4*7WAJ3!#UDJYZ1_)=M01IR:7D
M6;6Y9?&:B;*!.O_$N3SLE [:A76+_P%02P,$%     @ 08!,6NYN#=I3 P
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
MIQ%', 6@ 4/BN#D'#\ZC<'-.A=M?5\:_ 5!+ P04    " !!@$Q:EXJ[',
M   3 @  "P   %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!
M5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]I
MSI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA<UYVE/=LO3T%O@*\Z
M3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A(E@6FD7)TZ(=I7\=
MQ_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0    ( $&
M3%I-1&@$70,  (@6   /    >&PO=V]R:V)O;VLN>&ULQ9A!3]LP%(#_BI43
M.[ V"3! %(G!V"I-4%'&=3+.*[%P[,IVVL&OWW-"-V<K3[N8G=(XKO/%]GN?
M[9.UL8_WQCRR'XW2;I+5WB^/1R,G:FBX>V^6H/')PMB&>[RU#R.WM, K5P/X
M1HV*\?A@U'"IL].335LS.XIOC ?AI=%8& KN)*S=[^?AEJVDD_=22?\TR;K?
M"C+62"T;^0S5)!MGS-5F_<58^6RTYVHNK%%JDN7]@SNP7HJ_BN<!\I;?NZ[$
M\_L;CB"3[&",#2ZD=;ZKT;7/D7$%6+F_:[VYE,J#O> >/EO3+J5^",W@5XRB
MS^CZ87/M._'8_DLWFL5""K@PHFU ^[X?+:@ J%TMERYCFC<PR<[-"FSX'GS!
MM.J_S2-4U%/V6.(#.ZTZO'0H'[GB6@#K>LU%3 7!5+PE$]N9<8M_J*&;#^Y=
M!%D2D&5:R'EX;ZCCF%FP<]-@#-6@'<XX-M4B@MPC(/?>%++F^@$<DYK-O1&/
M=02Y3T#N_T?([T4$>4! 'KPI)'<UNU1FC;/SF^9M%4%^(" _I X<)SN^F06'
M5;L:$=HA@7:8%FVJ5^!\J,3F(%HKO80XW1P1:$=IT:ZP78Q8TP";@<6L@^DF
M3LYC*CN/4T\[C%.&XPI5EV,PP?PYJ#EIC\3Z0*9&^CXNN Z,VJ-508OA\.:4
M3O+$/KF!%>AV,*:4./+$YK@!@174$YLZU^*XG@EAVJ[;,./QP=!2ZL@3N^-3
MLU3F":!W!;M>:["A INI(22ECCRQ.V;\B:U<B-ON[V'5<"&=4,:UPR"FU)$G
M=L<45P459I9;RZLPRF?6!L=U41,S4N;($ZMC:WYF.[AX5C!8<N641/+$%MF6
MJK="4CK)$_ODM9S] AJOL2FU%(G50L8WVXDQ*<,4B0VS?6+NLCFV7;4JQB2W
M+(D=0V(.%K$%Y9XBL7NV!] %>"Z'.ZN"4D^16#U;*7\-^2""*/D4R3<NKP5Z
MUZ$Q)J6?(OG6Y17,OD=C3,I 16(#D9C#"*(45"16$(U9QIB4A(K$$B(7YH/L
M7E(2*A-+Z&5IOC4%E91VRL3:(>TXF(TEI9TRL79HB>_&F.196:>=T>;DLX*%
MU%!=X2L<E@NNQ,RR<.GW<GO[88&U:)4ZQ[)K_=7P:G.0NCD$/OT)4$L#!!0
M   ( $& 3%K@/0E7: $  $H4   :    >&PO7W)E;',O=V]R:V)O;VLN>&UL
M+G)E;'/-V,V.@C 4AN%;(;T RSE5U(FXFHW;B3= L("1O]!.1N]^""[P([.8
MC>E9D4(X?1?D">GAR]:9OW:MJZZ]B^Y-W;I45=[W'UJ[O+)-YE9=;]OQ2=$-
M3>;'Y5#J/LMO66DUQW&BA]<9ZGAXG1F='[W]S\2N**ZY_>SR[\:V_H_!^J<;
M;JZRUJOHG VE]:G2]WJ^[?1TH=4X646G2ZJ&TX64#AW$$,3A@PP$F?!!:PA:
MAP_:0- F?% "04GXH"T$;<,'[2!H%SYH#T'[\$$4HXRQ@*0%U@*T)N2:!'A-
M"#8)$)N0;!)@-B':)$!M0K9)@-N$<), N0GI)@%V$^)- O1FU)L%Z,VH-PO0
MFQ<_VP+T9M2;!>C-J#<+T)M1;Q:@-Z/>+$!O1KU9@-Z,>K, O1GU9@%Z&]3;
M"-#;H-Y&@-X&]38"]#:+PY)WZNW\H[9N[GFN<?]W4NW'=^V\_;1\WEQ\*A/.
M&HX.C[]02P,$%     @ 08!,6AR:"5V, 0  YQ0  !,   !;0V]N=&5N=%]4
M>7!E<UTN>&ULS9C-;L(P$(1?)<H5$6.GI3\"+FVO+8>^@)MLB$426[:A\/9U
MPH_4BD8@*G4NL1+OSHR]TG?(Y'UKR$6;NFK<-"Z]-X^,N:RD6KI$&VK"3J%M
M+7UXM0MF9+:4"V)B-!JS3#>>&C_TK48\FSQ3(5>5CUXVX;-3NIG&EBH71T^[
MPM9K&DMC*I5)'_;9NLE_N SW#DGH[&I<J8P;A(*8G71H=WXWV/>]K<E:E5,T
ME]:_RCI4L4W%G-]6Y))^B1,9=5&HC'*=K>K0DCAC2>:N)/)UE>Q$!_W./MPP
M[9[\:O].IL\P5,ZM-BY,S-+E=H>1M-U#$X3(>M5_Q*-CD+[Z?-1..Z?\3.]P
MO9_:+KMY.-8MU]_Q]QD?]2_,(4!RI" Y;D!RW(+D&(/DN /)<0^2XP$D!Q^A
M!$$A*D=!*D=A*D>!*D>A*D?!*D?A*D<!*T<AJT AJT AJT AJT AJT AJT A
MJT AJT AJT AJT A:XI"UA2%K"D*6=/_).N'ULN__O76KDDM57/P9]W_S=D7
M4$L! A0#%     @ 08!,6@=!36*!    L0   !               ( !
M &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4    " !!@$Q:_0(@B>X    K @
M$0              @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4
M" !!@$Q:F5R<(Q &  "<)P  $P              @ ', 0  >&PO=&AE;64O
M=&AE;64Q+GAM;%!+ 0(4 Q0    ( $& 3%I3;Q3>3 8  .DB   8
M      " @0T(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4
M" !!@$Q:+W#'HJ0'  "K'@  &               @(&/#@  >&PO=V]R:W-H
M965T<R]S:&5E=#(N>&UL4$L! A0#%     @ 08!,6B?,[E<5 P  -PD  !@
M             ("!:18  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+ 0(4
M Q0    ( $& 3%H5,K5$D 8  -\>   8              " @;09  !X;"]W
M;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4    " !!@$Q:+/>:ATL*  #@
M7   &               @(%Z(   >&PO=V]R:W-H965T<R]S:&5E=#4N>&UL
M4$L! A0#%     @ 08!,6J!7U37X @   0D  !@              ("!^RH
M 'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( $& 3%J&A:\:
MN@<  -HA   8              " @2DN  !X;"]W;W)K<VAE971S+W-H965T
M-RYX;6Q02P$"% ,4    " !!@$Q:6%>^B<@%   C#0  &
M@($9-@  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @ 08!,
M6C H:U'*!@  .Q   !@              ("!%SP  'AL+W=O<FMS:&5E=',O
M<VAE970Y+GAM;%!+ 0(4 Q0    ( $& 3%J^ FZ7\@0  -0,   9
M      " @1=#  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#%
M  @ 08!,6MX.$<K("P  Y2   !D              ("!0$@  'AL+W=O<FMS
M:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4    " !!@$Q:K0!<B,8)  #B&
M&0              @($_5   >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;%!+
M 0(4 Q0    ( $& 3%JLW'$)6 <  (D1   9              " @3Q>  !X
M;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ 08!,6NFXLFL6
M!0  N0P  !D              ("!RV4  'AL+W=O<FMS:&5E=',O<VAE970Q
M-"YX;6Q02P$"% ,4    " !!@$Q:17C&::4%  "%#0  &0
M@($8:P  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    ( $&
M3%HX8.G.?P(  +@'   9              " @?1P  !X;"]W;W)K<VAE971S
M+W-H965T,38N>&UL4$L! A0#%     @ 08!,6BQU:+Y# @  B@8  !D
M         ("!JG,  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"% ,4
M    " !!@$Q:3 *_%10$  !&"@  &0              @($D=@  >&PO=V]R
M:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( $& 3%KJSJ<LDP,  !D)
M   9              " @6]Z  !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL
M4$L! A0#%     @ 08!,6G_OX'7*!   [PL  !D              ("!.7X
M 'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    " !!@$Q:9#R#
M'[\"   %!@  &0              @($Z@P  >&PO=V]R:W-H965T<R]S:&5E
M=#(Q+GAM;%!+ 0(4 Q0    ( $& 3%K;H-_?<P0  &(7   9
M  " @3"&  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#%     @
M08!,6BSV;'R= @  U 8  !D              ("!VHH  'AL+W=O<FMS:&5E
M=',O<VAE970R,RYX;6Q02P$"% ,4    " !!@$Q:X_3,KUT"  "^!@  &0
M            @(&NC0  >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+ 0(4
M Q0    ( $& 3%I1DYN+W@0  %L9   9              " @4*0  !X;"]W
M;W)K<VAE971S+W-H965T,C4N>&UL4$L! A0#%     @ 08!,6NJ+0NBU!P
MWCT  !D              ("!5Y4  'AL+W=O<FMS:&5E=',O<VAE970R-BYX
M;6Q02P$"% ,4    " !!@$Q:7%<8ET$#   D"0  &0              @(%#
MG0  >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    ( $& 3%H'
MD,=]^P0  *H9   9              " @;N@  !X;"]W;W)K<VAE971S+W-H
M965T,C@N>&UL4$L! A0#%     @ 08!,6LT$:?9+ P  4PL  !D
M     ("![:4  'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"% ,4
M" !!@$Q:CA,32C\#  !&"@  &0              @(%OJ0  >&PO=V]R:W-H
M965T<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    ( $& 3%I'T.5Q9@4  &0G   9
M              " @>6L  !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL4$L!
M A0#%     @ 08!,6NYN#=I3 P  G0P  !D              ("!@K(  'AL
M+W=O<FMS:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    " !!@$Q:I4U%MM$"
M  #5!P  &0              @($,M@  >&PO=V]R:W-H965T<R]S:&5E=#,S
M+GAM;%!+ 0(4 Q0    ( $& 3%I5GOY('0,  &H1   -              "
M 12Y  !X;"]S='EL97,N>&UL4$L! A0#%     @ 08!,6I>*NQS     $P(
M  L              ( !7+P  %]R96QS+RYR96QS4$L! A0#%     @ 08!,
M6DU$: 1= P  B!8   \              ( !1;T  'AL+W=O<FMB;V]K+GAM
M;%!+ 0(4 Q0    ( $& 3%K@/0E7: $  $H4   :              "  <_
M  !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    ( $& 3%H<
MF@E=C $  .<4   3              "  6_"  !;0V]N=&5N=%]4>7!E<UTN
9>&UL4$L%!@     I "D %@L  "S$      $!

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.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>105</ContextCount>
  <ElementCount>222</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>24</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="esp-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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/ShareholdersEquityType2or3</Role>
      <ShortName>Statements of Changes in Stockholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="esp-20241231.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/ShareholdersEquityType2or3_Parentheticals</Role>
      <ShortName>Statements of Changes in Stockholders' Equity (Unaudited) (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="esp-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.htm">esp-20241231.htm</File>
    <File>esp-20241231.xsd</File>
    <File>esp-20241231_cal.xml</File>
    <File>esp-20241231_def.xml</File>
    <File>esp-20241231_lab.xml</File>
    <File>esp-20241231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>image_001.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="519">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2024</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-20241231.htm": {
   "nsprefix": "esp",
   "nsuri": "http://espey.com/20241231",
   "dts": {
    "inline": {
     "local": [
      "esp-20241231.htm"
     ]
    },
    "schema": {
     "local": [
      "esp-20241231.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/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd",
      "https://xbrl.sec.gov/country/2024/country-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024_def.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024_lab.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024_pre.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-sub-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd",
      "https://xbrl.sec.gov/sic/2024/sic-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "esp-20241231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "esp-20241231_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "esp-20241231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "esp-20241231_pre.xml"
     ]
    }
   },
   "keyStandard": 201,
   "keyCustom": 21,
   "axisStandard": 10,
   "axisCustom": 0,
   "memberStandard": 12,
   "memberCustom": 12,
   "hidden": {
    "total": 23,
    "http://fasb.org/us-gaap/2024": 15,
    "http://espey.com/20241231": 3,
    "http://xbrl.sec.gov/dei/2024": 5
   },
   "contextCount": 105,
   "entityCount": 1,
   "segmentCount": 24,
   "elementCount": 543,
   "unitCount": 4,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 519,
    "http://xbrl.sec.gov/dei/2024": 29,
    "http://xbrl.sec.gov/ecd/2024": 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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://espey.com/role/ShareholdersEquityType2or3",
     "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": "c53",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c53",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://espey.com/role/ShareholdersEquityType2or3_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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.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-20241231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:WeightedAverageNumberOfSharesIssuedBasic",
      "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-20241231.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-20241231.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-20241231.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",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "4",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.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": "c87",
      "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-20241231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c87",
      "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-20241231.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",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.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-20241231.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-20241231.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-20241231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.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": "c100",
      "name": "esp:EmployeeStockOwnershipPlanHoursWorked",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c100",
      "name": "esp:EmployeeStockOwnershipPlanHoursWorked",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20241231.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-20241231.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-20241231.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "esp_ASC606Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r35",
      "r638"
     ]
    },
    "us-gaap_AccountsPayableCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r76",
      "r887"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r807"
     ]
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r37"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r37"
     ]
    },
    "us-gaap_AccruedSalariesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r37",
      "r609"
     ]
    },
    "us-gaap_AccruedVacationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r37"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r51",
      "r102",
      "r456",
      "r477",
      "r481"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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",
      "r357",
      "r360",
      "r401",
      "r472",
      "r473",
      "r788",
      "r789",
      "r790",
      "r795",
      "r796",
      "r797",
      "r799"
     ]
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r708"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r45"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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": [
      "r485",
      "r795",
      "r796",
      "r797",
      "r799",
      "r869",
      "r889"
     ]
    },
    "dei_AdditionalSecurities462b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AdditionalSecurities462b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Securities. 462(b)"
       }
      }
     },
     "auth_ref": [
      "r764"
     ]
    },
    "dei_AdditionalSecurities462bFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AdditionalSecurities462bFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Securities, 462(b), File Number"
       }
      }
     },
     "auth_ref": [
      "r764"
     ]
    },
    "dei_AdditionalSecuritiesEffective413b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AdditionalSecuritiesEffective413b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Securities Effective, 413(b)"
       }
      }
     },
     "auth_ref": [
      "r762"
     ]
    },
    "dei_AddressTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r721"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r721"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r721"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r721"
     ]
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r90",
      "r91",
      "r92",
      "r93",
      "r94",
      "r95",
      "r131",
      "r132",
      "r133",
      "r135",
      "r145",
      "r175",
      "r176",
      "r212",
      "r213",
      "r214",
      "r215",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r242",
      "r243",
      "r244",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r373",
      "r374",
      "r375",
      "r376",
      "r379",
      "r380",
      "r388",
      "r389",
      "r390",
      "r395",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r439",
      "r440",
      "r441",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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": []
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r755"
     ]
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r671",
      "r682",
      "r698",
      "r733"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r674",
      "r685",
      "r701",
      "r736"
     ]
    },
    "ecd_AggtPnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r756"
     ]
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r721"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r728"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r675",
      "r686",
      "r702",
      "r728",
      "r737",
      "r741",
      "r749"
     ]
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r747"
     ]
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r312",
      "r317"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r103",
      "r178",
      "r224"
     ]
    },
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r678"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r158"
     ]
    },
    "dei_ApproximateDateOfCommencementOfProposedSaleToThePublic": {
     "xbrltype": "dateOrAsapItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r75",
      "r84",
      "r101",
      "r125",
      "r162",
      "r164",
      "r170",
      "r171",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r348",
      "r350",
      "r381",
      "r453",
      "r509",
      "r613",
      "r614",
      "r638",
      "r650",
      "r837",
      "r838",
      "r878"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r97",
      "r105",
      "r125",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r348",
      "r350",
      "r381",
      "r638",
      "r837",
      "r838",
      "r878"
     ]
    },
    "dei_AuditedAnnualFinancialStatements": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r678"
     ]
    },
    "dei_AuditorFirmId": {
     "xbrltype": "nonemptySequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r663",
      "r666",
      "r678"
     ]
    },
    "dei_AuditorLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AuditorLocation": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorLocation",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "auth_ref": [
      "r663",
      "r666",
      "r678"
     ]
    },
    "dei_AuditorName": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorName",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "auth_ref": [
      "r663",
      "r666",
      "r678"
     ]
    },
    "dei_AuditorOpinionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorOpinionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/AuditInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Opinion [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r760"
     ]
    },
    "dei_AuditorTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r184"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r185"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r189",
      "r450"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r188",
      "r449"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r179",
      "r230"
     ]
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Exercise Price",
        "terseLabel": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r744"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r745"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]",
        "terseLabel": "Award Timing Disclosures"
       }
      }
     },
     "auth_ref": [
      "r740"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r740"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r740"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r740"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r740"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r740"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Underlying Securities Amount",
        "terseLabel": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r742"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r741"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r741"
     ]
    },
    "esp_BacklogPercentageOfRecognitions": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20241231",
     "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/20241231",
     "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/20241231",
     "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/20241231",
     "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/2024",
     "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": [
      "r666",
      "r678"
     ]
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r33",
      "r65",
      "r66"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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 Equivalents, at Carrying Value",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r99",
      "r607"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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 Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r62",
      "r124"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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 Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect",
        "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r62"
     ]
    },
    "us-gaap_CertificatesOfDepositMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r645",
      "r646",
      "r647",
      "r648"
     ]
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r719"
     ]
    },
    "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r716"
     ]
    },
    "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r714"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r720"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r720"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r41",
      "r77",
      "r454",
      "r496"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r69",
      "r245",
      "r246",
      "r603",
      "r834",
      "r836"
     ]
    },
    "us-gaap_CommonStockDividendsPerShareCashPaid": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockDividendsPerShareCashPaid",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3_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": [
      "r70"
     ]
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r70"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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": [
      "r641",
      "r642",
      "r643",
      "r645",
      "r646",
      "r647",
      "r648",
      "r795",
      "r796",
      "r799",
      "r869",
      "r888",
      "r889"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r44"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r44",
      "r497"
     ]
    },
    "us-gaap_CommonStockSharesHeldInEmployeeTrustShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r26"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r44"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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",
      "r44",
      "r497",
      "r515",
      "r889",
      "r890"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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 December 31, 2024 and June 30, 2024. Outstanding 2,796,758 and 2,733,958 shares as of December 31, 2024 and June 30, 2024, respectively (includes 200,652 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": [
      "r44",
      "r455",
      "r638"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r725"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r724"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r726"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r723"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/ShareholdersEquityType2or3"
     ],
     "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",
      "r110",
      "r112",
      "r117",
      "r446",
      "r464",
      "r465"
     ]
    },
    "dei_ContactPersonnelEmailAddress": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r666"
     ]
    },
    "dei_ContactPersonnelName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/20241231",
     "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/2024",
     "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": [
      "r263",
      "r264",
      "r275"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r263",
      "r264",
      "r275"
     ]
    },
    "us-gaap_CostOfRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r54",
      "r125",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r381",
      "r613",
      "r837"
     ]
    },
    "dei_CountryRegion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r34"
     ]
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191"
     ]
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817",
      "r818",
      "r819",
      "r820",
      "r821"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r86",
      "r794"
     ]
    },
    "us-gaap_DeferredOtherTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r794",
      "r868"
     ]
    },
    "esp_DeferredTaxAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r321"
     ]
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r867"
     ]
    },
    "dei_DelayedOrContinuousOffering": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DelayedOrContinuousOffering",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Delayed or Continuous Offering"
       }
      }
     },
     "auth_ref": [
      "r690",
      "r691",
      "r705"
     ]
    },
    "us-gaap_Depreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r274",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r281",
      "r285",
      "r313",
      "r314",
      "r316",
      "r626"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Based Compensation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DividendOrInterestReinvestmentPlanOnly": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DividendOrInterestReinvestmentPlanOnly",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividend or Interest Reinvestment Plan Only"
       }
      }
     },
     "auth_ref": [
      "r690",
      "r691",
      "r705"
     ]
    },
    "esp_DividendPayableAmountPerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "localname": "DividendsCommonStock",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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",
      "r70"
     ]
    },
    "dei_DocumentAccountingStandard": {
     "xbrltype": "accountingStandardItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r666"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r663",
      "r666",
      "r678"
     ]
    },
    "dei_DocumentCopyrightInformation": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r663",
      "r666",
      "r678",
      "r729"
     ]
    },
    "dei_DocumentFinStmtRestatementRecoveryAnalysisFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r663",
      "r666",
      "r678",
      "r729"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r664"
     ]
    },
    "dei_DocumentRegistrationStatement": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r652"
     ]
    },
    "dei_DocumentShellCompanyEventDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r666"
     ]
    },
    "dei_DocumentShellCompanyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r666"
     ]
    },
    "dei_DocumentSubtitle": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r706"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r655"
     ]
    },
    "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r718"
     ]
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r118",
      "r136",
      "r137",
      "r138",
      "r139",
      "r140",
      "r141",
      "r148",
      "r150",
      "r155",
      "r156",
      "r157",
      "r161",
      "r338",
      "r347",
      "r375",
      "r376",
      "r447",
      "r466",
      "r610"
     ]
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r118",
      "r136",
      "r137",
      "r138",
      "r139",
      "r140",
      "r141",
      "r150",
      "r155",
      "r156",
      "r157",
      "r161",
      "r338",
      "r347",
      "r375",
      "r376",
      "r447",
      "r466",
      "r610"
     ]
    },
    "us-gaap_EarningsPerShareDilutedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r147",
      "r158",
      "r159",
      "r160"
     ]
    },
    "dei_EffectiveAfter60Days486a": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveAfter60Days486a",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective after 60 Days, 486(a)"
       }
      }
     },
     "auth_ref": [
      "r768"
     ]
    },
    "dei_EffectiveOnDate486a": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveOnDate486a",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Date, 486(a)"
       }
      }
     },
     "auth_ref": [
      "r768"
     ]
    },
    "dei_EffectiveOnDate486b": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveOnDate486b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Date, 486(b)"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "dei_EffectiveOnSetDate486a": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveOnSetDate486a",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Set Date, 486(a)"
       }
      }
     },
     "auth_ref": [
      "r768"
     ]
    },
    "dei_EffectiveOnSetDate486b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveOnSetDate486b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective on Set Date, 486(b)"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "dei_EffectiveUponFiling462e": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveUponFiling462e",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Upon Filing, 462(e)"
       }
      }
     },
     "auth_ref": [
      "r767"
     ]
    },
    "dei_EffectiveUponFiling486b": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveUponFiling486b",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective upon Filing, 486(b)"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "dei_EffectiveWhenDeclaredSection8c": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EffectiveWhenDeclaredSection8c",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective when Declared, Section 8(c)"
       }
      }
     },
     "auth_ref": [
      "r771"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r315"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r866"
     ]
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "esp_EmployeeStockOwnershipPlanDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r29"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r31"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r28"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r30"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r30"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r30"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r30"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOPAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockOwnershipPlanESOPSharesInESOPAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of ESOP Shares [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_EmployeeStockOwnershipPlanHoursWorked": {
     "xbrltype": "integerItemType",
     "nsuri": "http://espey.com/20241231",
     "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/20241231",
     "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/20241231",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r658"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityExTransitionPeriod": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r770"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityHomeCountryISOCode": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r759"
     ]
    },
    "dei_EntityInvCompanyType": {
     "xbrltype": "invCompanyType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r758"
     ]
    },
    "dei_EntityLegalForm": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r678"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityReportingCurrencyISOCode": {
     "xbrltype": "currencyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r654"
     ]
    },
    "dei_EntityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r761"
     ]
    },
    "ecd_EqtyAwrdsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r712"
     ]
    },
    "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r754"
     ]
    },
    "ecd_EqtyAwrdsAdjsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r754"
     ]
    },
    "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r754"
     ]
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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",
      "r92",
      "r113",
      "r114",
      "r115",
      "r126",
      "r127",
      "r128",
      "r132",
      "r140",
      "r142",
      "r144",
      "r163",
      "r215",
      "r223",
      "r243",
      "r262",
      "r324",
      "r325",
      "r333",
      "r334",
      "r335",
      "r339",
      "r346",
      "r347",
      "r355",
      "r357",
      "r358",
      "r359",
      "r360",
      "r363",
      "r374",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r389",
      "r391",
      "r401",
      "r462",
      "r472",
      "r473",
      "r474",
      "r485",
      "r534"
     ]
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r722"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r671",
      "r682",
      "r698",
      "r733"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r668",
      "r679",
      "r695",
      "r730"
     ]
    },
    "us-gaap_ExcessStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ExcessStockSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common shares outstanding, beginning of period",
        "label": "Excess Stock, Shares Outstanding",
        "documentation": "Number of shares of excess stock held by shareholders."
       }
      }
     },
     "auth_ref": []
    },
    "dei_ExchangeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]",
        "terseLabel": "Executive Category:"
       }
      }
     },
     "auth_ref": [
      "r728"
     ]
    },
    "dei_ExhibitsOnly462d": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "ExhibitsOnly462d",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exhibits Only, 462(d)"
       }
      }
     },
     "auth_ref": [
      "r766"
     ]
    },
    "dei_ExhibitsOnly462dFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "ExhibitsOnly462dFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exhibits Only, 462(d), File Number"
       }
      }
     },
     "auth_ref": [
      "r766"
     ]
    },
    "dei_Extension": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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_FairValueInputsQuantitativeInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsQuantitativeInformationAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Weighted Average Assumptions of Option Award [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Remaining liability",
        "label": "Finance Lease, Liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease."
       }
      }
     },
     "auth_ref": [
      "r392",
      "r393"
     ]
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r180",
      "r181",
      "r182",
      "r183",
      "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",
      "r225",
      "r226",
      "r227",
      "r228",
      "r229",
      "r231",
      "r232",
      "r233",
      "r260",
      "r261",
      "r364",
      "r378",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r463",
      "r616",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r636",
      "r637",
      "r639",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r821",
      "r822",
      "r823",
      "r824",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r438",
      "r445",
      "r606"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r606"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r438",
      "r831"
     ]
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r675",
      "r686",
      "r702",
      "r737"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r675",
      "r686",
      "r702",
      "r737"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r675",
      "r686",
      "r702",
      "r737"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r675",
      "r686",
      "r702",
      "r737"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r675",
      "r686",
      "r702",
      "r737"
     ]
    },
    "dei_FormerAddressMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r665",
      "r689"
     ]
    },
    "dei_FormerFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r717"
     ]
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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 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/2024",
     "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": [
      "r52",
      "r54",
      "r83",
      "r125",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r381",
      "r612",
      "r613",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805",
      "r837"
     ]
    },
    "dei_IcfrAuditorAttestationFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "IcfrAuditorAttestationFlag",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "auth_ref": [
      "r663",
      "r666",
      "r678"
     ]
    },
    "esp_IncentiveStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r53",
      "r79",
      "r83",
      "r448",
      "r460",
      "r612",
      "r613",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r85",
      "r87",
      "r143",
      "r144",
      "r162",
      "r168",
      "r171",
      "r319",
      "r320",
      "r329",
      "r467",
      "r628"
     ]
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r322",
      "r323"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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) increase 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/2024",
     "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": "Increase 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/2024",
     "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/2024",
     "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/2024",
     "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 (decrease) 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": [
      "r436",
      "r792"
     ]
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/2024",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in assets and liabilities:",
        "label": "Increase (Decrease) in Operating Capital [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": "Decrease 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/20241231",
     "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 (decrease) 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/20241231",
     "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": "Decrease in ESOP payable",
        "documentation": "Increase (Decrease) in employee stock ownership plan payable amouunt.",
        "label": "Increase Decreasein ESOPPayable"
       }
      }
     },
     "auth_ref": []
    },
    "esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20241231",
     "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": "Decrease 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/2024",
     "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": [
      "r151",
      "r152",
      "r153",
      "r157",
      "r284"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r675",
      "r686",
      "r702",
      "r728",
      "r737",
      "r741",
      "r749"
     ]
    },
    "esp_IndividualEmployeeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]",
        "terseLabel": "Insider Trading Arrangements:"
       }
      }
     },
     "auth_ref": [
      "r747"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]",
        "terseLabel": "Insider Trading Policies and Procedures:"
       }
      }
     },
     "auth_ref": [
      "r667",
      "r753"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r667",
      "r753"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r667",
      "r753"
     ]
    },
    "us-gaap_InventoryForLongTermContractsOrPrograms": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r784"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r104",
      "r608",
      "r638"
     ]
    },
    "us-gaap_InventoryNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r786"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r785"
     ]
    },
    "dei_InvestmentCompanyActFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "InvestmentCompanyActFileNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Act File Number"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693",
      "r694"
     ]
    },
    "dei_InvestmentCompanyActRegistration": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "InvestmentCompanyActRegistration",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Act Registration"
       }
      }
     },
     "auth_ref": [
      "r707"
     ]
    },
    "dei_InvestmentCompanyRegistrationAmendment": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "InvestmentCompanyRegistrationAmendment",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Registration Amendment"
       }
      }
     },
     "auth_ref": [
      "r707"
     ]
    },
    "dei_InvestmentCompanyRegistrationAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "InvestmentCompanyRegistrationAmendmentNumber",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Company Registration Amendment Number"
       }
      }
     },
     "auth_ref": [
      "r707"
     ]
    },
    "us-gaap_InvestmentIncomeInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r162",
      "r167",
      "r171",
      "r613",
      "r791"
     ]
    },
    "esp_InvestmentSecuritiesScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r774",
      "r775",
      "r808"
     ]
    },
    "us-gaap_InvestmentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InvestmentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Securities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r651"
     ]
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r36",
      "r37",
      "r38",
      "r39",
      "r40",
      "r41",
      "r42",
      "r125",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r349",
      "r350",
      "r351",
      "r381",
      "r495",
      "r611",
      "r650",
      "r837",
      "r878",
      "r879"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r49",
      "r78",
      "r458",
      "r638",
      "r793",
      "r825",
      "r876"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r38",
      "r98",
      "r125",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r349",
      "r350",
      "r351",
      "r381",
      "r638",
      "r837",
      "r878",
      "r879"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "localname": "MaximumMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum [Member]",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r247",
      "r248",
      "r249",
      "r250",
      "r279",
      "r318",
      "r377",
      "r435",
      "r468",
      "r469",
      "r482",
      "r487",
      "r488",
      "r540",
      "r559",
      "r563",
      "r564",
      "r593",
      "r604",
      "r605",
      "r615",
      "r617",
      "r625",
      "r631",
      "r632",
      "r636",
      "r637",
      "r640",
      "r839",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]",
        "terseLabel": "Measure:"
       }
      }
     },
     "auth_ref": [
      "r720"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r720"
     ]
    },
    "esp_MilestonesAchievedMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r740"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r748"
     ]
    },
    "us-gaap_MunicipalBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r721"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": "Net Cash Provided by (Used in) Financing Activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r122"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Financing Activities:",
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": "Net Cash Provided by (Used in) Investing Activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r122"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Investing Activities:",
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": "Net Cash Provided by (Used in) Operating Activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r62",
      "r63",
      "r64"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Operating Activities:",
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/ShareholdersEquityType2or3",
      "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": [
      "r55",
      "r64",
      "r80",
      "r96",
      "r109",
      "r111",
      "r115",
      "r125",
      "r131",
      "r136",
      "r137",
      "r138",
      "r139",
      "r140",
      "r143",
      "r144",
      "r154",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r338",
      "r347",
      "r376",
      "r381",
      "r461",
      "r517",
      "r532",
      "r533",
      "r649",
      "r837"
     ]
    },
    "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r88",
      "r95",
      "r129",
      "r130",
      "r133",
      "r134",
      "r145",
      "r146",
      "r176",
      "r216",
      "r217",
      "r336",
      "r337",
      "r339",
      "r347",
      "r361",
      "r372",
      "r396",
      "r402",
      "r403",
      "r442",
      "r443",
      "r444",
      "r476",
      "r477",
      "r478",
      "r479",
      "r481"
     ]
    },
    "dei_NewEffectiveDateForPreviousFiling": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "NewEffectiveDateForPreviousFiling",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "New Effective Date for Previous Filing"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693",
      "r694"
     ]
    },
    "dei_NoSubstantiveChanges462c": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "NoSubstantiveChanges462c",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Substantive Changes, 462(c)"
       }
      }
     },
     "auth_ref": [
      "r765"
     ]
    },
    "dei_NoSubstantiveChanges462cFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r765"
     ]
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/20241231",
     "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/2024",
     "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": [
      "r720"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-NEOs [Member]",
        "terseLabel": "Non-NEOs"
       }
      }
     },
     "auth_ref": [
      "r675",
      "r686",
      "r702",
      "r728",
      "r737"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r711"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r710"
     ]
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r728"
     ]
    },
    "esp_NonQualifiedStockOptionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r748"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r748"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r57"
     ]
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r83",
      "r612",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805"
     ]
    },
    "us-gaap_OrderOrProductionBacklogMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r32",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831",
      "r832",
      "r833"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_OtherAddressMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (loss), 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": [
      "r50",
      "r51",
      "r278"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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 (loss) 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": [
      "r106",
      "r108",
      "r210"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (loss), 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",
      "r107"
     ]
    },
    "us-gaap_OtherEmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r37"
     ]
    },
    "us-gaap_OtherNonoperatingIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r119"
     ]
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r720"
     ]
    },
    "dei_OtherReportingStandardItemNumber": {
     "xbrltype": "otherReportingStandardItemNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r666"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r673",
      "r684",
      "r700",
      "r735"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery Compensation Amount",
        "terseLabel": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r676",
      "r687",
      "r703",
      "r738"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r676",
      "r687",
      "r703",
      "r738"
     ]
    },
    "dei_ParentEntityLegalName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r709"
     ]
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r61"
     ]
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r59"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r60"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r719"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r719"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r711"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO [Member]",
        "terseLabel": "PEO"
       }
      }
     },
     "auth_ref": [
      "r728"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name",
        "terseLabel": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r721"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r710"
     ]
    },
    "esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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/2024",
     "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": [
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849",
      "r850",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849",
      "r850",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865"
     ]
    },
    "ecd_PnsnAdjsPrrSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r712"
     ]
    },
    "ecd_PnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r757"
     ]
    },
    "ecd_PnsnBnftsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r711"
     ]
    },
    "dei_PostEffectiveAmendment": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "PostEffectiveAmendment",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Post-Effective Amendment"
       }
      }
     },
     "auth_ref": [
      "r652"
     ]
    },
    "dei_PostEffectiveAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r652"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r659"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r661"
     ]
    },
    "dei_PreEffectiveAmendment": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "PreEffectiveAmendment",
     "presentation": [
      "http://xbrl.sec.gov/dei/role/document/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-Effective Amendment"
       }
      }
     },
     "auth_ref": [
      "r652"
     ]
    },
    "dei_PreEffectiveAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r652"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r787"
     ]
    },
    "esp_ProceedsFromGrantAward": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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/2024",
     "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",
      "r809"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r58"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r68",
      "r100",
      "r459"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r394",
      "r451",
      "r459",
      "r638"
     ]
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r709"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r709"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r247",
      "r248",
      "r249",
      "r250",
      "r277",
      "r279",
      "r308",
      "r309",
      "r310",
      "r318",
      "r377",
      "r410",
      "r419",
      "r435",
      "r468",
      "r469",
      "r482",
      "r487",
      "r488",
      "r540",
      "r559",
      "r563",
      "r564",
      "r593",
      "r604",
      "r605",
      "r615",
      "r617",
      "r625",
      "r631",
      "r632",
      "r636",
      "r637",
      "r640",
      "r643",
      "r835",
      "r839",
      "r872",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r247",
      "r248",
      "r249",
      "r250",
      "r277",
      "r279",
      "r308",
      "r309",
      "r310",
      "r318",
      "r377",
      "r410",
      "r419",
      "r435",
      "r468",
      "r469",
      "r482",
      "r487",
      "r488",
      "r540",
      "r559",
      "r563",
      "r564",
      "r593",
      "r604",
      "r605",
      "r615",
      "r617",
      "r625",
      "r631",
      "r632",
      "r636",
      "r637",
      "r640",
      "r643",
      "r835",
      "r839",
      "r872",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885"
     ]
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]",
        "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure"
       }
      }
     },
     "auth_ref": [
      "r668",
      "r679",
      "r695",
      "r730"
     ]
    },
    "dei_RegistrationStatementAmendmentNumber": {
     "xbrltype": "sequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r652"
     ]
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r669",
      "r680",
      "r696",
      "r731"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date",
        "terseLabel": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r670",
      "r681",
      "r697",
      "r732"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r677",
      "r688",
      "r704",
      "r739"
     ]
    },
    "esp_RestrictedStockPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r46",
      "r70",
      "r457",
      "r476",
      "r481",
      "r484",
      "r498",
      "r638"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained Earnings",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r126",
      "r127",
      "r128",
      "r132",
      "r140",
      "r142",
      "r144",
      "r215",
      "r223",
      "r243",
      "r324",
      "r325",
      "r333",
      "r334",
      "r335",
      "r339",
      "r346",
      "r347",
      "r355",
      "r358",
      "r359",
      "r363",
      "r374",
      "r389",
      "r391",
      "r472",
      "r474",
      "r485",
      "r889"
     ]
    },
    "esp_RevenueDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r81",
      "r82",
      "r162",
      "r165",
      "r166",
      "r169",
      "r171",
      "r172",
      "r173",
      "r174",
      "r273",
      "r274",
      "r437"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r89",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271",
      "r272",
      "r276"
     ]
    },
    "us-gaap_Revenues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r81",
      "r82",
      "r116",
      "r125",
      "r162",
      "r165",
      "r166",
      "r169",
      "r171",
      "r172",
      "r173",
      "r174",
      "r211",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r381",
      "r448",
      "r613",
      "r837"
     ]
    },
    "us-gaap_RevenuesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenuesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r748"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r748"
     ]
    },
    "srt_ScenarioUnspecifiedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ScenarioUnspecifiedDomain",
     "presentation": [
      "http://espey.com/role/RevenueDetails",
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]"
       }
      }
     },
     "auth_ref": [
      "r145",
      "r280",
      "r772",
      "r798"
     ]
    },
    "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191"
     ]
    },
    "esp_ScheduleOfContractualMaturitiesOfAvailableForSaleDebtSecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/20241231",
     "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/20241231",
     "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/2024",
     "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": [
      "r800"
     ]
    },
    "us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r28"
     ]
    },
    "us-gaap_ScheduleOfInvestmentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602"
     ]
    },
    "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r72"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r71"
     ]
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r74"
     ]
    },
    "esp_ScheduleOfStockOptionActivityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r653"
     ]
    },
    "dei_Security12gTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r657"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r656"
     ]
    },
    "dei_SecurityReportingObligation": {
     "xbrltype": "securityReportingObligationItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r662"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r56"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r626"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r300"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r309"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r308"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r310"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r282",
      "r283",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r627"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/20241231",
     "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/2024",
     "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": [
      "r291"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r291"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r304"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r846"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r846"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r293"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r303"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r289",
      "r290"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r289",
      "r290"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r305"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r305"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r305"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r294"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r293"
     ]
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r307"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/20241231",
     "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/20241231",
     "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/2024",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r73"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r305"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "us-gaap_SharesHeldInEmployeeStockOwnershipPlanAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesHeldInEmployeeStockOwnershipPlanAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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": [
      "r660"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r44",
      "r47",
      "r48",
      "r92",
      "r113",
      "r114",
      "r115",
      "r126",
      "r127",
      "r128",
      "r132",
      "r140",
      "r142",
      "r144",
      "r163",
      "r215",
      "r223",
      "r243",
      "r262",
      "r324",
      "r325",
      "r333",
      "r334",
      "r335",
      "r339",
      "r346",
      "r347",
      "r355",
      "r357",
      "r358",
      "r359",
      "r360",
      "r363",
      "r374",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r389",
      "r391",
      "r401",
      "r462",
      "r472",
      "r473",
      "r474",
      "r485",
      "r534"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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": [
      "r126",
      "r127",
      "r128",
      "r163",
      "r391",
      "r437",
      "r483",
      "r486",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r497",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r516",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r534",
      "r644"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StatementScenarioAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StatementScenarioAxis",
     "presentation": [
      "http://espey.com/role/RevenueDetails",
      "http://espey.com/role/ScheduleofContractualMaturitiesofAvailableforSaleDebtSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]"
       }
      }
     },
     "auth_ref": [
      "r145",
      "r280",
      "r772",
      "r773",
      "r798"
     ]
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r127",
      "r128",
      "r163",
      "r177",
      "r391",
      "r437",
      "r483",
      "r486",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r497",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r516",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r534",
      "r644"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r672",
      "r683",
      "r699",
      "r734"
     ]
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": []
    },
    "esp_StockBasedCompensationDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20241231",
     "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/20241231",
     "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/2024",
     "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": []
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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",
      "r25",
      "r43",
      "r44",
      "r70"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/ShareholdersEquityType2or3",
      "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",
      "r43",
      "r44",
      "r70",
      "r294"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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",
      "r44",
      "r47",
      "r48",
      "r70"
     ]
    },
    "us-gaap_StockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r643"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/ShareholdersEquityType2or3"
     ],
     "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": [
      "r44",
      "r47",
      "r48",
      "r67",
      "r499",
      "r515",
      "r535",
      "r536",
      "r638",
      "r650",
      "r793",
      "r825",
      "r876",
      "r889"
     ]
    },
    "us-gaap_SupplementalCashFlowElementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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": [
      "r727"
     ]
    },
    "us-gaap_TaxesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r36",
      "r37"
     ]
    },
    "esp_TerminationWithdrawalObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Axis]"
       }
      }
     },
     "auth_ref": [
      "r806",
      "r877"
     ]
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "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/2024",
     "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": [
      "r719"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r726"
     ]
    },
    "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement [Axis]",
        "terseLabel": "Trading Arrangement:"
       }
      }
     },
     "auth_ref": [
      "r747"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r749"
     ]
    },
    "us-gaap_TradingSecuritiesDebtAmortizedCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r452",
      "r783"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "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/2024",
     "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": [
      "r180",
      "r181",
      "r182",
      "r183",
      "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",
      "r260",
      "r261",
      "r364",
      "r378",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r463",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r636",
      "r637",
      "r639",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r821",
      "r822",
      "r823",
      "r824",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875"
     ]
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Adoption Date",
        "terseLabel": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Duration",
        "terseLabel": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "ecd_TrdArrExpirationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrExpirationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Expiration Date",
        "terseLabel": "Expiration Date"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r749"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Title",
        "terseLabel": "Title"
       }
      }
     },
     "auth_ref": [
      "r749"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r752"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Termination Date",
        "terseLabel": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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/2024",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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/2024",
     "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 333,116 and 395,916 shares of common stock in treasury as of December 31, 2024 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",
      "r44",
      "r47"
     ]
    },
    "esp_TwoThousandSevenPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "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/20241231",
     "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/2024",
     "localname": "TypeOfAdoptionMember",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Domain]",
        "documentation": "Amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r90",
      "r91",
      "r92",
      "r93",
      "r94",
      "r95",
      "r131",
      "r132",
      "r133",
      "r135",
      "r145",
      "r175",
      "r176",
      "r212",
      "r213",
      "r214",
      "r215",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r242",
      "r243",
      "r244",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r373",
      "r374",
      "r375",
      "r376",
      "r379",
      "r380",
      "r388",
      "r389",
      "r390",
      "r395",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r439",
      "r440",
      "r441",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481"
     ]
    },
    "us-gaap_USTreasuryBillSecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r886"
     ]
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r746"
     ]
    },
    "esp_UnearnedESOPSharesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20241231",
     "localname": "UnearnedESOPSharesMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "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/20241231",
     "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/20241231",
     "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/2024",
     "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": [
      "r715"
     ]
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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": [
      "r800"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted (in Shares)",
        "verboseLabel": "Denominator for diluted earnings per common shares \u2013 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": [
      "r149",
      "r157"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation",
     "presentation": [
      "http://espey.com/role/ScheduleofDenominatorsoftheBasicandDilutedEarningsPerShareTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Denominator for basic earnings per common shares \u2013Weighted 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/2024",
     "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": [
      "r27"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "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/2024",
     "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/2024",
     "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": [
      "r148",
      "r157"
     ]
    },
    "esp_WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20241231",
     "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/2024",
     "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": [
      "r763"
     ]
    },
    "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "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": [
      "r713"
     ]
    }
   }
  }
 },
 "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",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "25",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480637/718-40-25-10"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "25",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480637/718-40-25-12"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480520/718-40-45-3"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480489/718-40-50-1"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205/tableOfContent"
  },
  "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(17))",
   "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(19)(a))",
   "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(19))",
   "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(20))",
   "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(21))",
   "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(23))",
   "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(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r41": {
   "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"
  },
  "r42": {
   "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"
  },
  "r43": {
   "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"
  },
  "r44": {
   "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"
  },
  "r45": {
   "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"
  },
  "r46": {
   "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"
  },
  "r47": {
   "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"
  },
  "r48": {
   "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"
  },
  "r49": {
   "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"
  },
  "r50": {
   "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"
  },
  "r51": {
   "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"
  },
  "r52": {
   "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"
  },
  "r53": {
   "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"
  },
  "r54": {
   "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"
  },
  "r55": {
   "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"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "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"
  },
  "r59": {
   "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"
  },
  "r60": {
   "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"
  },
  "r61": {
   "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"
  },
  "r62": {
   "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"
  },
  "r63": {
   "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"
  },
  "r64": {
   "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"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/235/tableOfContent"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/275/tableOfContent"
  },
  "r67": {
   "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"
  },
  "r68": {
   "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"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r70": {
   "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"
  },
  "r71": {
   "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"
  },
  "r72": {
   "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"
  },
  "r73": {
   "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"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "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"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "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"
  },
  "r83": {
   "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"
  },
  "r84": {
   "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"
  },
  "r85": {
   "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"
  },
  "r86": {
   "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"
  },
  "r87": {
   "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"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/250/tableOfContent"
  },
  "r89": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r90": {
   "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"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "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"
  },
  "r94": {
   "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"
  },
  "r95": {
   "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"
  },
  "r96": {
   "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "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"
  },
  "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(1))",
   "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(13))",
   "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(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "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"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "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"
  },
  "r112": {
   "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"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "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": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r126": {
   "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"
  },
  "r127": {
   "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"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r130": {
   "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"
  },
  "r131": {
   "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"
  },
  "r132": {
   "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"
  },
  "r133": {
   "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"
  },
  "r134": {
   "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"
  },
  "r135": {
   "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"
  },
  "r136": {
   "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"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "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"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "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"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "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"
  },
  "r160": {
   "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"
  },
  "r161": {
   "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"
  },
  "r162": {
   "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"
  },
  "r163": {
   "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "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"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "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": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "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"
  },
  "r230": {
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "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"
  },
  "r236": {
   "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"
  },
  "r237": {
   "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"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "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)(i))",
   "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)(4)(iii)(A))",
   "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": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r254": {
   "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"
  },
  "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)(i))",
   "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)(iii)(A))",
   "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)(4)(iii)(B))",
   "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": "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"
  },
  "r259": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r370": {
   "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"
  },
  "r371": {
   "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"
  },
  "r372": {
   "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"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-5"
  },
  "r389": {
   "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"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "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"
  },
  "r406": {
   "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"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "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"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "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"
  },
  "r425": {
   "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"
  },
  "r426": {
   "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"
  },
  "r427": {
   "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"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "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"
  },
  "r437": {
   "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"
  },
  "r438": {
   "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"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r445": {
   "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"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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"
  },
  "r455": {
   "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"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "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"
  },
  "r460": {
   "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"
  },
  "r461": {
   "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"
  },
  "r462": {
   "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"
  },
  "r463": {
   "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"
  },
  "r464": {
   "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"
  },
  "r465": {
   "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"
  },
  "r466": {
   "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"
  },
  "r467": {
   "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"
  },
  "r468": {
   "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"
  },
  "r469": {
   "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"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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"
  },
  "r472": {
   "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"
  },
  "r473": {
   "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"
  },
  "r474": {
   "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"
  },
  "r475": {
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "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"
  },
  "r478": {
   "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"
  },
  "r479": {
   "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"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "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"
  },
  "r487": {
   "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"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r490": {
   "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"
  },
  "r491": {
   "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"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "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"
  },
  "r495": {
   "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"
  },
  "r496": {
   "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"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "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"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "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"
  },
  "r525": {
   "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"
  },
  "r526": {
   "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"
  },
  "r527": {
   "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"
  },
  "r528": {
   "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"
  },
  "r529": {
   "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"
  },
  "r530": {
   "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"
  },
  "r531": {
   "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"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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"
  },
  "r540": {
   "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"
  },
  "r541": {
   "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"
  },
  "r542": {
   "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"
  },
  "r543": {
   "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"
  },
  "r544": {
   "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"
  },
  "r545": {
   "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"
  },
  "r546": {
   "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"
  },
  "r547": {
   "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"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "r552": {
   "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"
  },
  "r553": {
   "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "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"
  },
  "r556": {
   "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"
  },
  "r557": {
   "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"
  },
  "r558": {
   "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"
  },
  "r559": {
   "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"
  },
  "r560": {
   "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"
  },
  "r561": {
   "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"
  },
  "r562": {
   "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"
  },
  "r563": {
   "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"
  },
  "r564": {
   "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"
  },
  "r565": {
   "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"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "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"
  },
  "r569": {
   "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"
  },
  "r570": {
   "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"
  },
  "r571": {
   "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"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "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"
  },
  "r575": {
   "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"
  },
  "r576": {
   "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"
  },
  "r577": {
   "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"
  },
  "r578": {
   "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"
  },
  "r579": {
   "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"
  },
  "r580": {
   "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"
  },
  "r581": {
   "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"
  },
  "r582": {
   "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"
  },
  "r583": {
   "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"
  },
  "r584": {
   "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"
  },
  "r585": {
   "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"
  },
  "r586": {
   "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"
  },
  "r587": {
   "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"
  },
  "r588": {
   "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"
  },
  "r589": {
   "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"
  },
  "r590": {
   "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"
  },
  "r591": {
   "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"
  },
  "r592": {
   "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"
  },
  "r593": {
   "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"
  },
  "r594": {
   "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"
  },
  "r595": {
   "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"
  },
  "r596": {
   "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"
  },
  "r597": {
   "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"
  },
  "r598": {
   "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"
  },
  "r599": {
   "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"
  },
  "r600": {
   "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"
  },
  "r601": {
   "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"
  },
  "r602": {
   "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"
  },
  "r603": {
   "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"
  },
  "r604": {
   "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"
  },
  "r605": {
   "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"
  },
  "r606": {
   "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"
  },
  "r607": {
   "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"
  },
  "r608": {
   "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"
  },
  "r609": {
   "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"
  },
  "r610": {
   "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"
  },
  "r611": {
   "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"
  },
  "r612": {
   "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"
  },
  "r613": {
   "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"
  },
  "r614": {
   "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"
  },
  "r615": {
   "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"
  },
  "r616": {
   "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"
  },
  "r617": {
   "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"
  },
  "r618": {
   "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"
  },
  "r619": {
   "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"
  },
  "r620": {
   "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"
  },
  "r621": {
   "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"
  },
  "r622": {
   "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"
  },
  "r623": {
   "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"
  },
  "r624": {
   "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"
  },
  "r625": {
   "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"
  },
  "r626": {
   "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"
  },
  "r627": {
   "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"
  },
  "r628": {
   "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"
  },
  "r629": {
   "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"
  },
  "r630": {
   "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"
  },
  "r631": {
   "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"
  },
  "r632": {
   "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"
  },
  "r633": {
   "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"
  },
  "r634": {
   "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"
  },
  "r635": {
   "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"
  },
  "r636": {
   "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"
  },
  "r637": {
   "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"
  },
  "r638": {
   "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"
  },
  "r639": {
   "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"
  },
  "r640": {
   "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"
  },
  "r641": {
   "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"
  },
  "r642": {
   "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"
  },
  "r643": {
   "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"
  },
  "r644": {
   "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"
  },
  "r645": {
   "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"
  },
  "r646": {
   "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"
  },
  "r647": {
   "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"
  },
  "r648": {
   "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"
  },
  "r649": {
   "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"
  },
  "r650": {
   "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"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "Global LEI Foundation"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "g"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12, 13, 15d"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14a",
   "Subsection": "12"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "15",
   "Subsection": "d"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "249",
   "Section": "308",
   "Subsection": "a"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 8-K",
   "Number": "249",
   "Section": "308"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form F-3"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-2"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-3"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-4"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-6"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form S-3"
  },
  "r706": {
   "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"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Investment Company Act",
   "Number": "270"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r712": {
   "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"
  },
  "r713": {
   "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"
  },
  "r714": {
   "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"
  },
  "r715": {
   "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"
  },
  "r716": {
   "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"
  },
  "r717": {
   "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"
  },
  "r718": {
   "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"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r732": {
   "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"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "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"
  },
  "r736": {
   "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"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r742": {
   "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"
  },
  "r743": {
   "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"
  },
  "r744": {
   "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"
  },
  "r745": {
   "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"
  },
  "r746": {
   "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"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r754": {
   "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"
  },
  "r755": {
   "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"
  },
  "r756": {
   "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"
  },
  "r757": {
   "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"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "313"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-X",
   "Number": "210",
   "Section": "2",
   "Subsection": "2"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "413",
   "Subsection": "b"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "b"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "c"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "d"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "462",
   "Subsection": "e"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "486",
   "Subsection": "a"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "486",
   "Subsection": "b"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "7A",
   "Section": "B",
   "Subsection": "2"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Section": "8",
   "Subsection": "c"
  },
  "r772": {
   "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"
  },
  "r773": {
   "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"
  },
  "r774": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Topic": "321",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/321/tableOfContent"
  },
  "r775": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Topic": "325",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/325/tableOfContent"
  },
  "r776": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r777": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r778": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r779": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r780": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r781": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r782": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r783": {
   "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"
  },
  "r784": {
   "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"
  },
  "r785": {
   "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"
  },
  "r786": {
   "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"
  },
  "r787": {
   "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"
  },
  "r788": {
   "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"
  },
  "r789": {
   "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"
  },
  "r790": {
   "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"
  },
  "r791": {
   "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"
  },
  "r792": {
   "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"
  },
  "r793": {
   "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"
  },
  "r794": {
   "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"
  },
  "r795": {
   "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"
  },
  "r796": {
   "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"
  },
  "r797": {
   "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"
  },
  "r798": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r799": {
   "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"
  },
  "r800": {
   "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"
  },
  "r801": {
   "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"
  },
  "r802": {
   "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"
  },
  "r803": {
   "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"
  },
  "r804": {
   "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"
  },
  "r805": {
   "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"
  },
  "r806": {
   "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"
  },
  "r807": {
   "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"
  },
  "r808": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/320/tableOfContent"
  },
  "r809": {
   "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"
  },
  "r810": {
   "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"
  },
  "r811": {
   "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"
  },
  "r812": {
   "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"
  },
  "r813": {
   "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"
  },
  "r814": {
   "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"
  },
  "r815": {
   "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"
  },
  "r816": {
   "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"
  },
  "r817": {
   "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"
  },
  "r818": {
   "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"
  },
  "r819": {
   "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"
  },
  "r820": {
   "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"
  },
  "r821": {
   "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"
  },
  "r822": {
   "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"
  },
  "r823": {
   "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"
  },
  "r824": {
   "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"
  },
  "r825": {
   "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"
  },
  "r826": {
   "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"
  },
  "r827": {
   "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"
  },
  "r828": {
   "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"
  },
  "r829": {
   "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"
  },
  "r830": {
   "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"
  },
  "r831": {
   "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"
  },
  "r832": {
   "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"
  },
  "r833": {
   "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"
  },
  "r834": {
   "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"
  },
  "r835": {
   "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"
  },
  "r836": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r837": {
   "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"
  },
  "r838": {
   "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"
  },
  "r839": {
   "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"
  },
  "r840": {
   "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"
  },
  "r841": {
   "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"
  },
  "r842": {
   "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"
  },
  "r843": {
   "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"
  },
  "r844": {
   "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"
  },
  "r845": {
   "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"
  },
  "r846": {
   "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"
  },
  "r847": {
   "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"
  },
  "r848": {
   "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"
  },
  "r849": {
   "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"
  },
  "r850": {
   "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"
  },
  "r851": {
   "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"
  },
  "r852": {
   "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"
  },
  "r853": {
   "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"
  },
  "r854": {
   "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"
  },
  "r855": {
   "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"
  },
  "r856": {
   "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"
  },
  "r857": {
   "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"
  },
  "r858": {
   "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"
  },
  "r859": {
   "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"
  },
  "r860": {
   "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"
  },
  "r861": {
   "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"
  },
  "r862": {
   "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"
  },
  "r863": {
   "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"
  },
  "r864": {
   "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"
  },
  "r865": {
   "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"
  },
  "r866": {
   "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"
  },
  "r867": {
   "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"
  },
  "r868": {
   "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"
  },
  "r869": {
   "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"
  },
  "r870": {
   "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"
  },
  "r871": {
   "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"
  },
  "r872": {
   "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"
  },
  "r873": {
   "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"
  },
  "r874": {
   "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"
  },
  "r875": {
   "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"
  },
  "r876": {
   "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"
  },
  "r877": {
   "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"
  },
  "r878": {
   "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"
  },
  "r879": {
   "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"
  },
  "r880": {
   "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"
  },
  "r881": {
   "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"
  },
  "r882": {
   "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"
  },
  "r883": {
   "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"
  },
  "r884": {
   "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"
  },
  "r885": {
   "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"
  },
  "r886": {
   "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"
  },
  "r887": {
   "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"
  },
  "r888": {
   "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"
  },
  "r889": {
   "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"
  },
  "r890": {
   "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-000162-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001174947-25-000162-xbrl.zip
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
M_T"9F0P!8D6X\+I^ *9>)IMN\>HS?^A%P?.9;T_J1:O6P2'^RP^^3TM_9.?
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
MLZ\/CX?L-]X'JW3NBFX4^)[3#=F9'PQFZ*'\ATL[R/^MJ@;2RCNY&9#;D0U
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
M#\[OR7<]P7@7^WUS[QE&#5R(X':(MACWF .@/P;<!9X$$:YL1'#Y@^-QK^O
MIQ"R14(V4CLL@K9YH_Y+O<X^.\*UC]DU?P3YO15_#H6'&%JL7D^NEHH<WP#_
MI,3$KZA'_N"8-1#6Y(,4;/G9;)5)5^AJ8V,;%XHN,$($J69F'V],C#J#&!6-
MT_APTX&>L+OG 0SW-.#W3O>$78*.Q<RX])$#QOA-1^E=^,T83T>\F<>K^T#P
M[_5[ >H-3Q](5F?@7VU3[&O+J1P?'@[[!?;\Q"]_D9YE1,[#@7AF7Q\>#]EO
MO _FY]P5W2CP/:<;LC,_&!2B6K<CS46M/NMQ[Q'N=CPV;I__QF(+S=Y]\_C0
M!E-IOU] 3+;ZJ76(=9[85[BY%[)SSQ;VK/75\JR/-/"@[*Z;.(HXO%K1\R3,
MZOJNRP<AJ%?Z&S@EQXYZ2++ZZ^@Z=%'P*B3NZ:26[S+Z!KTMEE8!+*Q R+_.
M Y@(C_-D XL='0OQA_CSIOESVNT.^T,7_)--3"(A(OX0?X@_;XT_N=>*4I!;
MI;$0?_:</\DQ"LPI[OC G>?15=03 ;&'5(SX0_PIGS_?/,$#CR;9\SETYX,+
MHQAW7V/<L9HSTH&Y@9RLU"/^S.//^5-7A+B(1BQ:($*#0/2$%SH_BNO;O?-L
MNA$1=\@?+_+'@>#A,'@F#A&'UK;7MU?7Q)UYW!FO_OCMKRU=:^Y2CG=6+\H=
MB(#GG.F140;*ZUJ4RHC<BE$N ]XFIT_[_M"+B-/%<_J:!^P?W!WF&IX2LV<S
M^P^>[ZH \7E.J,,##X@E4TU.<8\X34Z19'K?.!V7V9?,Z;UHQS:JE?]USH@G
M&[/]WZ$GF*$6T90MI60>(87M,1Q[\3+!+6?+>D)0:T6",FT\M+;;<\"2W=H,
M0VD7WJUML3R5C.6.277..V@K*M!K;J5ME-?/C63X3<APHW09;H(=!B,,GMS4
MR1"3$.<@Q,W2A;A5ZS04RRRZ)QS)[YN0WU;I\ML&(]S IH9*LUUT7R,2XK<S
MQ]MN1VY#K76,MJ6T"^\K1S*])X9Y24NOPEIV+VWI96C8>:YEZDJ[5;TP.>?>
M7B3(!0NR45AG[^6"K)?7FXX$>?<%>;$<EQTI&T:M8VJ*WC24=E.OG/B67I.W
MF624$185J&3E1'69"Q?S6\LD+ @+PH*P("P("\*"L" L" O"@K H#HN]J&"<
M'N+$?FGF>%V_+XY)^JHF?80%84%8$!:$!6%!6! 6A 5A05@0%A6>W=)2[%L5
M)L*"L" L" O"@K @+ @+PH*P("P(BPI/5M=9BDTKGI' ^-#7.:/9 ,-+$26+
MLB2&51-#PH*P("P("\)B%[%8O&M+6W_;%KCL"^FQO_AAF&G'EHG[#2VUH;0*
MWP9.TD*:2U@0%H3%_F&QT*-ML)U^=8=F5<6AT;+VWDH[61["@K @+ @+PH*P
M("P("\*"L" L=A>+BBQKK\8TQ[,%7E^/U[\GU\3U^6OBKUDQI_W<5=03 >M.
M;%)V_1"(^' ?''68)R(\:B7B3_CCW2]%Y4 D'1-[I>.4R#<O$#"*_PK[[[Z+
MY.-Y<Y@GN?)N17<8.)$CPM/ ">&K3_"G]W@-S//M._ZT6D_"1JUCZ-/="'/N
M!EAN"\ M-J)=^NH"K4"UADWX$KZ$+^&[F_@N:2*LY^_Q/XD'QQ/V1^'!+]&U
MR[WP4D3?X&8?8C (!-((8(;7APNO'E9V_4T\0\DRBS[U8#O]ATFBR6(1OH0O
MX4OX5FV@A&_>^%;C/*'<#ZLH(+%4?IC9JF*8204\E&"GQ0["@K @+ @+PH*P
M("P("\*"L" L*H=%10IX\L;KSH^X^ZH&AWI25%,$"0O"@K @+ @+PH*P("P(
M"\*"L-A7+(I:E)ZQ'CUK37GN4G([[O]@*7J3^C]40'CV4?;)#A$6A 5A05@0
M%H0%84%8$!:$!6&QNUCLZ?+Q;>1WOS-_@)/_D(DG$72=4-@D?QOD=@QC_>2.
MQ.,B#(?"'M\T<-OC@0CEEU<Q5N<I5#-S/J&\?CSM8ZJU3D-76FK16PC(I.V*
M22,LUE-O,W?U_@=WAR*[=K_*Z)I:K=/4T6,T2;<K*4^DVX0%8;%R@Q!K6W'4
M]'[,&0&5OK6 *M<N'_LH5V6+U8;^VZAUC+:E:(T6^>]*RA/YC.I@451913&J
M;>*^?4TW%%.WJ-AB^R*UCQI!UHFP("P("\*"L" L" O"@K @+ B+W<5BGXLM
MZO<\%+;<L2^\D&,B@ 2P:@)(6! 6U<>BL#*%4_L_PS#J"R\*[_Q3VW;P\=R]
MYHY]X9WQ@1-Q5RZE?41;=C9FRL8SI3?BSZ$3PIAA!#^<KH@3JC>BZS]Z\HF9
M,JA6K:.U#44UIL_7(2FL@A2212 L" O"@K @+ B+W<*BJ,7T*@60C6H$D+0
MO[=:1!:-L" L" O"@K @+ @+PH*P("P(B]W%HB(+\*LQS?%L@=?7-16/K4O/
MLL/1';/XLTRLF'/NXB?GAP,OL$/XVK&9S);T^_ CE#T4/MP'1YV#7[)G5/15
MNS[VD^S(B)!K$<@DRAD/>YA:F9<.@>MF[%]KUCKJH36]>XT-!*".UY->5DTO
M"0O"@K @+ B+7<1BR79W;?WUEE%(,!8F9%H<D><*Z\VVHC8TVL=>-8$AY24L
M" O"HLI8+'9J&]00K.W3VA7P::6L]L](4\RA,W<QROW5"U7CW@]L$8Q>]M'E
MW>_X2A;ZKF.O,+R--'\9%269N9FL+X<#U4*]'$DGU EU0IU0)]0)=4*=HCE"
MG72=4"?4"75"O9JH5Z1X9S/VON::?FAA$<Y'[G*O*Q@/F?_ /HFNZ-^+@!F:
MPG15-_/-=LZAH; <[DR!E2]EMC^\=T59:=X5"<FRF4QK;W3B;9H CAMX7PVC
M,.(>@I/Q^!-+K75TI=EN*$VKZ"[+,\6F+.AV0F9_V6MQE8+:\UV@*3S_<^A$
MSUF6+2P-ERU4TU#T=M'+%B2ANR^A^J:]KE>74!ULJ*FT+$UI:F1$2427BN@&
M%4UKBJA1ZUB*JIHDG22=RZ13+UTZ33"@,%TR=,4RBSX.@$1T3V9.^@;'2>8Q
M<[)J'<,P%$UKD,2245U6\+6)M"ZVJM.'<KTVKPUT_J;95%IZT8=R99;57&N<
M24QS$]--#_'<0$R;8%"55J.EJ.VB6Q*1F%9=3!=+:>D1:JO6,6&*KS641C4C
MU'1QXRCBP-+.!]OYT3GX<(0_/@PFZ<(MO\L(Z_/@T8$7X:7JRYL&R8/S>_)=
M3S#>Q:[?W'N&40,7(K@=HBW&/>8 Z(\!=X$G080K&Q%<_N!XW.LZ\"F$;)&0
MW=0.BZ!MWJC_4J^SSXYP[6-VS1]!?F_%GT/A(88-5J\G5TM%CF^ ?U)BXE?4
M(W\ %R.LR0<IV/*SV2J3KM#5QL8V+A1=8(0(4LW,/MZ8&'4&,2H:I_'AI@,]
M87?/ QCN:<#OG>X)NP0=BYEQZ2,'S/&;CM*[\)LQGHYX,X]7]X'@W^OW M0;
MGCZ0K,[ O]JFV->64SD^/!SV"^SYB5_^(CW+B)R' _',OCX\'K+?>!_,S[DK
MNE'@>TXW9&=^,"A$M6Y'FHM:?=;CWB/<[7ALW#[_C<46FKW[YO&A#:;2?K^
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
M@I*9TTI$P!10?=WP_/M>3Q24FD7<'-N#* 3IP,$ M],1/O;D "(IRGD]Z5V
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
M@79:== AJDOF::Y)_S'19@SNW._V'PB_D+:Z]!1])!R6QY ?C&K@ML,'88U
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
MQ^F#?%OVW3\0A$)^FVHFAEVCAY+'D*PC/PX51H/VU/H>MT94'(9\I1VLF?F
M38)N737?S[PH4OA GX\Q1$GM^=!MAXHZ*?H1<J=&8[68&/YS.D3N2W4=9XIF
MK"4-_972 "1E_BOP!*DVF2Z\IZ/F!*-ZD86]-^%O>!L>-Z--+&\N63=LH!@\
M1F)I%!I;";J1]F $VB(0+]JW?THIS99%!YT]G1#NY7*Q52NB4CS;[CW@PQU1
M:R=M)G#G1RQ?SJ&#J66.TL(!C00A_^[X;.+M$9L"EPXK,+QQ9LQ#&>+A!>[J
MT]#I$3+$SW_%+".L;JC"/K+14A82A<,<<E@I'?#',A3%H$K/O#[535NMD <<
M,- >2A3J),6UH\86P3LL8R%I6[4>IB*@ZR+C<S!$5."2A23UE@E@B%3^J:$6
M3<AT%E]8HQ=YZ)%5N,<<]8%+.-(^%!S8\)UPLQ8"A^7ZUR$C"_&R#Y7!T9AH
M&S<(\DTLW!@!U KV/T!5?D#-6D(8HP=>=MO#7EJ9WP82 L[S-4_IMEJI\$?F
M2DEOV@<C?&!^Q^_!X;36F9E,C&UU$0UM2!&],#B^"\F CN.PXY$SB9J!$?/"
M8]P93+,8RD0$<?*]OI=(';/G#[$;W+CCAZZ.C*%E+MU*E]X5V!152&R@M,%B
M-N:7O<8,8:R*F<T+%IO+RILU4#L#KP6EM:_JVNE#*AP?A DB_7./O/0MV>;4
MU!(MHKYZO5#:B@$=G+2<6EYTZ#H1P1T<WA')@4VYZ6Z&?6 \+I-2L:7Z!FA>
M.=C#=,X-K<WKG>]RV1U8!7;5 ;#4%F=.C>XI2T!_Y*XR1"N%)$A@T2[++W#[
M"?R*>P4KP"WS3?P-?'YW![="3+%')-EP ,P8),HGH0PT1C<G98=ZWH%MCDP/
M3_6\1.Y&S!ZS&(^AN ,YSVTU" X7#!?9<5T\>6PX:%G!I@B"J>''\MJA6PD;
MAGNQGC<=9VQ8B!<90:5I9 :O(P%YF=D8)2!UAU"3^)@G+5AVC$P=':^$#\"O
M0'^<9E#K(N!C0="ZM,<&SIK_3(?%_ 594O2ZCAM3^X<L.8R-SFRPPTC#!/P/
M,V>[T:-3R].531$LVFB]O<QA^#1. J, QX0K+X4!HV*H?M*X.DDB$$N/JN&Z
MW!-/#IJN5_97@O$49 2?:A$0/K$%0I;N</*A$N ]*!K"3?3H^+R/O0>(NF$D
M,DY6>+[M41X2D@#GKV?]XG)A6N2[\1;YILAW[2WRO;7(]P:5/O8F*+F@E*%8
M]0=Z5C%$[FF!/B )<ROHS!KHY1-\BX;1B083W%EW</RS/:X(RYCE^@#!S'U[
MF("\^RO538919BA0ZT$U#00J6AKJE[R50@I$1@$XIAY%&HC=Y?ZO;/9+FR'-
M@./YDY ^)F\8Q>P>!1A:V+T7ETL^#?7BK*O3RK@6LCA "=ITA$,KFTNS?*1]
MS3@D9"LF!)EE=2O!/E.D3:!T!XFAY+M:$E#%IYW%#43R$$QGP3X?=;RQR.<[
MG*"U#*V8O $YI)3>V8+]&TGR8>![W_#:(Y&/"0TX,&(-\;32K6%=$A50#&>&
M,</QHUYN7 'R_I3KD[0AG> )=@V-R1&J)\+MZZ!I_ UV23?>/4 MDOH-4,7.
MM$XFA#^3:6)B?4=-0E1/$-7J3,-K?]=H%BJZ8XBT0##'U/0-:+4]V_UOI%M*
MLUIHZC>-S,[B/-31P6N-0C4[.*%.YXZ=.42:\-D],7I7D\6O>YYP7!=/!(LX
M7:) S,\=4=+D!/9Y]3S@8BVO"O9%HFSA82"#],3ZA'BF#*;,"E6NQ7/:] '8
M&2PP5'2LMG@.49-FJ:>-/]T42*?G=@D)_+-J*H6-Y%R]+WHGY,F)!.MLU&J;
M$I<?P*C@S<MAG31;V(ME[ !AO-%6$$\D'LCSDZ4T<%0UY2B]Z70J'T/>N/3X
MTQ7!#?V458EK1?=3<.>G0:."Q8(E4>ZU($Q;[W'01:ZQ/>S>*;BR$1N:I*4"
MJ,>5*(0O(S2C1"YEJ\A$+C(,%&-:TG@?!KP7>N.H'>"(W*:)8= &: T7'8=
M3-'(_*'FHIN7*AN=4-]Y+5V=2L8^6<M@_D_ZXI0AEC\P2H >P+!K1.IDK@F:
M[:BE^[[\7!F5N6!T'()5,&_<-9T[*,(DVY0A1)*8CA/\E;W/% !Z/(* 3I[)
M3C@0F2GR2HE,TN1 YHD>A 8RI!.29(#Z@1F^!>%C8&'.MI[%H<KZ-+U0XEC'
MJ@-<G-,/M&:Q^,+$%(7=KQ\WNCS)'/+1;J+4!%(-0[P<4/<Y@LE#G$IV#!/!
MVD(:_+)!0/9-5MX/@?-\=*3=W8]V%\C\N)([*O*9%\O9:4X@[T=@1-# 4):"
MQ?5AC.ZS);/+U+'EQGAR!9@P,!!YG55KK/K(C41D>'1G4]89ND?N4/]B#P@M
M06;TD^+8]Y[TBS,;;67;MAXBN^8KEV#_H8#!F\B-0!]N@RTKXHY(70?2@QI+
M!ZVR,3!_Q\6,E #WF_P5H,LFNA7#4,;P3#<6W>)$O(R7D=PYT@^%S5M!6(*N
M270D&=C%-!\MLH:#D-E&NE?8@N#D1(K!97R^H%2KZ",WC\42H<C#6& OD;EX
ME)MCQ$NML4N;[VK\+3=QXJWH>S$%5_Y@#'NM15!Q"2@B08_%NDM^P5C>"2;F
MO=H<AXXW?@MZBS4W*K[,HR,?$!W)G,,"AQ/6V^O)71;"EU"JPSZ,W,>W$9PG
M7?;8E!:,*(MX@MICF>1KTP#L2M,W%5A8Y(MTAW=#2L"PKX!9B$OHLG8#AIKO
MJFM'&A9T]:3]7A*>),+7LARRT/+A#3%!_55PB$W<Y\S&I/C]P'^1^Z@;>]DQ
M\ O[RK!D)):&D([GF2)"3H2<>[J#2 =7D6B%A;A2M2E.\TRTLQ3WAO;EF-:+
M:S?>FO7NC^^!U@(LP]I[")&7B-^1??7454R!LD[AS1B_IE;)'H$T)XJ! I2+
MY,)+N6>H[3B%JXHR6G:[(!_?,+(R^TBQ.ZG0#:E3AG*+8^8E2Q?=(88[L_"<
M$?[7>-$.N LW: #"JF$/4-C!7G2$M&K08<-:6:HX6!EG.74% B8'DP6C L8;
M^(V96!9*/8Y,L).8["5M.0"!$,,[,,62-FX*]B_DER!Z(634/;S5 KW2]P6I
MEC*]EJ)*(B(W<>H/D%US=2F=LNGCM-R268#4;_6S N(;4UT6"=I(U=\1[X0H
ML>X$*MH#D-(67.+D)H%#WS55&9(WKCPM"E68Y3J*F@YI+EWJX9KZK$&WBN!B
MXB8P.H4*W2."\BY!D0>J9(LO-5GP,J+.Y1B8A">._PC;>-8X.D(J,G:)#01F
M5;D8.LQ05(Z=NKYT0E"Z;EXL6@[]-L%CTP5) <IG5/:Y2W!,@V*+F2$JW*"+
MP[#,%F".1,,!$X<[#0+)X:I"12=-[DE]/WAMR=.M&09,RAZ0L2\#,7^(3FH$
M*.44?Y,2PS(5K]&+Z&"/]\VP@Y2&[3+SR;,=(;7)*#<7U%P\+W1 L7DP^A7)
M<\DQ9MW?1CR)SE!GD&4;3HYZU:2O#^YBO+PG.3W25 K.+<<L)[3-I"3@%P&K
M*.6(%:.Q]#^%Y4X,%/:R>1T1)1RDR:$\[R<0^D[N-9!Z@74Z$\D-D!,R]R/Q
M8B."/2KT9)]FG4Q CH4'E >)4E_0YR&P[ 1$'?/'IQ!C9D"N:!B,:8(6+UAM
M$!?2C.U0MA%4YE9DW8Z/GKIG42?BFS;)M""5KB.#<\:YQ+'E%9H)(W(#4Y@X
M/5.PS\8YCB0JQ_?NA700T<2UAV0PDBFJ@J_ZXE 6E/5=JU!7SJ.#/<Y\;*1?
MC/)L4YE&:AWF.@5>'_3DL&=]5VH56MH/FF9?(,M+G8Q3#T?=O6IWE6V+HC:U
M0+FW5:JUL]\QT^R^ICQ)CGTOTWHLZ88Q^UH)E66EK#2JHFH#X[,K*%V+G5U+
M-Q0L/91'E%1K?7^D!Z8M9-N].]1H$KD#%LPNIF!B0HTE97.)!=:W 0Y;+E+<
M?(L44Z2X_A8I7IT!7R2//6LLH[N0@Z DJK2#P$J]:6S99]Q^K+SK@SSN5J@6
M:,+RK>:#?-JC.#$A,##Y;<R)!^JW-1*QJ-8-H>3&T\)89KC,7.$2<ZEBSE#:
MQS;O988H4U>F^1(N9Z-H*!D_WY5;A9H9S,/8>29J0Q%H]B:H2@]9V)6IUP**
M"C\M-?M:N(&-=Q_2P-JGT!^"W>#*C%\0Q.AM#41:RHBX%]B[6BT76Q9=9 /P
MB1ETDKX'8Q>DNQ:D6O@MWR,[8CUI#D2KS.SAD@V<9R)2(^0ME72X4X5Y4N\N
MMQ4X%^UHB+ZUJKPC<9=(^Y$Y3=(-8V1674Z<"_I!8?9QK)5(5>29)AMD,\1'
M*_:R!7FD1 [;F&7>;^,#4A-ECRB:@$Q1'>'D(S>262!4N,J(5LDX C$;Q;QD
MH*J7\7/*B_R#_><PE#YYCF!1;+@_##Q9J$T\V^7"$,ZH)B682$^UX5S8G(GS
MH,; Y1!6)B]"&3XRB.88D3*V:HT(M<X*1M7<L-<IAX_WRLQ@QD0T.&)M= CF
M^-ZRO7[=#MD,MDRVQ'V>S(5@MW3@O"E-R>%<?8PY2YLH$\8S4G5SJVLL592#
M,*9=Y210M'$Y#5%*$O6H2AY%YV<<R@G(4A05+Q5IA#(U#G2F*F4)AS(30U76
M43^NT801TS.B4OED4=@!%QV?9OS$1E\P0VQID:KR0K&VR? ,RU],JGW(+9=2
M. VRFH3$-_'#A HLY6TSWIO&EJTO0M6; 2/VR.N7EX&1RE4@>KW\_:1U<DX&
MOW!RVZ4<^"I+*0#F="8FA&2FDY7RS?J*D[/RL;4JZYA<O37OY*PDIU'1)-BO
MY:;6G(N,$[LF39@,[-.IC6WNR9@-5%U1+,S87)1Z%R+AJ^Y[(X^1RT+]94GD
M/,$EBE'D^F:E5>J19I>)L?JLUT05PAVJ5/J'OFZQG->5]6$!(6%3498F @9Q
M+)D+(OWKKJP0!0*CW8@6S!S<.BF;TPQ*C&;PC]=@6O(RE^W]I)J53I<1;@+R
MN.&20KH^*?VJQRYDK4R;I4#DX6('F P <PE"ATL>& <';WT* ;N63$SBRDK%
M7!A2,RO&=(T-83($7I\=V>.N$W4.=,)3WJDLV#_1ULE(!-R_H\54CJFUD=M6
M1055J3"J?DK;QFPNU\/6ZUV/?(+DLD&%5T3].,L$RB.*BMN=+'S3Q8LJ?_-@
M#\LGQ.E!=C7[F,MP)VW-F<PB/%B$+N.$ZB0V9+ ^:=!J>UR]/9:*!FNOGLPW
M4A$=(]: M:N\?U*_9]5<)54>ZI9>\X8<ZO)N5=VY#!^D@>*T"%X##NC"MC3W
MGXN=\U$&YJCA=V2(2)?)2TD[ Z# U) M0T-VM"(XH6@!_GZ/):I9L*:T^OE&
M+YT@"T;6/PEJ@32\&.X-O$V4;<7P!-*!(PO4TNJU"?/3P"XJ<?E)=(^Y&ZZ1
MO_QU\I>4$W.':=]X,7,>-.M['(Q'(P]3K%@_ .WQN"NX8)0PJJB/\VTF>Y/R
MJ+!85D6Q, LY38I1F=DQ7[EL$:.YS1/#-/8 [J*$#$RZ^;)E$%1 !I.A=M:R
MAH]*55'O ZDT)#TFW%Y9Z0A,=7D$Z'Q+Y_(WH<2T))5.)I?8@&ET$Y/4+(]3
MJ=H8\^=X)R,4H&Y%JDZ:E>M&B%0@&.*)XJ>(F:Z/GGH:#T$:(T)8'L[+8+5C
M]%LSW]VZ9[\LS(Y2K3#TD[BZZ!B[8@IM+,LO,=?)Y^G*>;A]6CWF!"J>LG&\
MY%D'R>A/G[4AH<#YE 0@;P>%LM69RB2/LB^.T-K39M1R2RG@Q^G2=(H)""*V
MA=NY3^E N>)T<8J!\I+JLX3^7!)L'E:^(B];;9*/1OX&2S[C6/^&/N"^^XV5
M3\R/%48M-YT=[1A4[B(*]V(YDQP/L_95AWH#%@2=8^DQY!QPRB5@($8J=W6E
M8>CVA4S^Q 2C["_']'9U8I7Z_NI.J<J9-_U 9!)KMH,/^U[,M0CC+#2=?3)E
M),Q(Y-G-VGED_7'%K=#4-U S@#P^V4J8967=&$;+'\,NY>@AR^O<+"_0,Y%%
M>;DOPI.1SIB\+Q(*@,(2)/ZY([NY9N6,MN32B)U9IWQ4F:^9:HO4ESF^M5R#
MK+'+4NQ,-1P'M2?/R\I?'&Z']IIGZX_(1>SZN-.Q8 B?3+=Z;63J:?*T?"JY
MI+W('[-@W8Y.,QY3LTT_<V+ _)QV.#\&?WHM[H:^= K_<'YZ_8Z$=?(\D A&
M>F'IHOAB'_A8O6)QN@YE:6=JZE]>Q9\6E6^]1>4I*M]XB\KO>_WV;]K\_BLU
MR(<Z>2@<)HB9P=!,?)H5E#!J?JX7<]IX)+'))>!#5V&.RKPW3,O#%#:45.BT
MBY73U8P8*L$SI 9S,F1!&J!C2!2JEV%W@A<<;N7N!:+G()[4H2[PVLR_IUN#
M8L]=U=^&4WL)"RQ.K!]4>C7^]8YU2*P!=+'"'V\/V?3F(\.,<) FQE+2?OB0
MX@]@-5'"4"JTN30N!M3%(_,@YI7>D:,6V-*C @07H?G)2:OO,*LK8-5=QW@1
M_/:>/F*'AH]V-I6*$B!-1P'YJT@SZ^MI#!MS(-2KVFH-/#D)QI=J")3=P>T"
M#I[]M0^!8CTDE<(L&H2,%I.9@4^"FGZL8$6]V& J*5F,\"GRDF.G,*MLYSR3
MO7&/!23D$I!&&Y=3JWI:J<4H3Z9B9,<R4$P5+ ^EQ2M,8R-B3RXP-10]"VKN
MR J,TO084X^D]*3L!C>2_U+<I!B( %PMF770M74T@A>2:HH,QJ>Q*^!PT,-8
M2B9$DLD^E84YG(%3L*]T2R(\9^@Q8?W1H$Q,F9D6Y1KI:B2&,).)P_)G;8$I
M^JD5;&>+AIGQ;N_-/DA3!O6,S"GI[NMT(F !*F,+Y$]RX^P2H2B^A\4;P\I2
MN82SH'@/1^\P"7>9*;;.U^DM4Y!1? <,6WZ=66?7%IIF*F=<QN*S@YB_88P
M6P($)(_"?Q RR^Q@Y<1MNK<JA8+"B[2[;I(M6[ ,SY:7,6\"[)6$65:8;470
M5'B<0O^!.SMDSGS*GHDL>P]ER9E&M)/%"G)PD;42>8<H;B<C]<I$3@T[8TDZ
M&X8&5C9T3IZ0Q\GCLH"('5!*+E% #^N&R"_=YQI^+!.1["/Q+13.F[':CG(#
MH)9(&5Y>SWQ7' _[ Y44A/(I1@]=JM-)= !D7(2I[K-SCD'.\E>J,M- <"#!
MV-%&3C?)ZADLCFC$LK0-5Y;V%<IWH#CM^?P2JMF02&\R)T$6'1[L6=%WUR\>
MUW!XAQN<U&OUT[6FU03<G4%YF5EW:'N^QFOE&#_;-9D0Y5\@C@]URTX5ML<U
M></T57R*B"RT7WCM?H+K#B3-+W3['NI69'!*Z%:E:DY<.$(.H%C4:1 >2_$
M-7F\=X:(#8!U5"9")88A4!3#$R"%4KAOAE8VRU2I;CK2%%#2\ Q!:5$#PVN%
M9X+(L[8$N(PPS-&US'8Q0YZ&?%B5I6&^+7]""+72')$5OCKYL@LCJ9$U6T0&
M6T2JF9'HDB%&N"W<(A,YA1*_U#C$*88^I3=6WZ'D3=!<IN\.5G1U7S0S'3BM
M)'2T&(<3&H1]1 X=L[FRGM=>6BRLPEYL F:,,S8&Z%8Q_,:,.:'0?A$E 4E(
M>TE*F&/H9YU0.CB>C1"SI1!]5/J,"FZ %>"/ ^*B70A\(V)=4 F7670GL8!<
M^!CKGY7%B/9OJG3&(D6YYI1EPOF:2B>JQ:I@1ZU\I#"<M5DI557:J;SG5=@O
M(S.R(R#SJ$7(HE#,W.;27HT\ST\<AP1 (%D,A3#V(%/0>"'\DK8RAT7EENC?
M3IN17K-CP:)_'L+!E F)<KWZ@RHK.=_5G$:MYI2;97K@N[I3KV#?T6)>.\X#
ME(^OJA-AFA^;2?R=MXVRY)A2Q:D7FTZC6F26*16=2K'LU*JE+,]@XF6E7"A]
MKZM[S0Q=(Z%V1CM?:V3\<M4IUDI.J]:4XS>=9J-(;#PV?KE1J)GC7P3JRE+N
M+0UICA(1"S'##B9/R+(D+I,B #"9T\DJM@()4\U*= GW"%R$<IX9,$FR@D7)
M;=-5K%,3N62%8.1DI1 AZ713#X_.)6+KP9% 8Q+0S\G:/SE %8?*XN>S&5LS
M%B/"*^8@K&HB'CEZS (Y'=^7]I6/MY4J3TMAN"1^!X6159-)O"5D1:\1_I<(
M6QE>T;#G)J16I@ ZC$5:.LSWQOCDI3&J5 F:)5Z6Z32-7',U5(K$;NDV;XY9
MAR6;%HQT?3.2,#Z/E_%A%\N$.I3)B:D2?RIRTMN#@N '[YU.N]:XB18G]*:M
M!7+J]QSX:=YO[?2WGFKT1@8]><:C/JE#C,LH6UO:#^+>Z_BJBQ2\%MZKG"F6
M,=\QJ-LQH-<4\E_J*I0,$HX02$N6,:Y2#1G4CDE_!"H0(G$P'P(=I@YY]+'/
MM^: W%W54B"G1\,( O_IV<TI=XC+)'?3%O?$H^;8$#%*1E STF0\!')1T#'=
MS._F/U@O+Y^F!,W+Q;>@.07-FV]!\WT/FI_/K8;MQFUIC513O\!M:1E2,WM%
M&G?G]-MR@5W/N3VM>6Y/>\.WIS7I]N2;,WMA4O=L;%@Y>E/FW$GDMY"4G[2#
M.,K#.RO%4:%X-Z_"0%M.6]9F+L'Q>O(?'M[IJXT@_4:A_,?Q^]%;EG?)&_=Z
MAL5@!;A6.A+3+WA[\@6OFAUJEG2MGMM'-M6]>S-D-E<J$Z)',:=?_*+=T' _
M1:'.C%_-WJTXI7K%:92DAP3^K(*UVQBQ-@NV.2(#>V4K"*6X' 6HM\N50OE[
M>G>E"-:JD]::ID(TGC;8(L;TZ.)J3JM>=6HM_@+^K#0;8%J7'6M-BZL6FKRX
M<K-0_][^6PRBY\1<H96_PK^]IR=?!WLR+"0ZSGTWR676"?78U46NWRS0V@(\
MDQG#FJJWTSUKBBRJ*:#%\K88?#-Z+,DOLL[99*YQ=-"HBB2\,3,N&=W6V=>%
MTNR\S;]B]+TBS20NV^4\+W.QL:,1OG2%H<(LI=XN6,#:X>(*V?*>FZSHM@RJ
M[921ZR-Z/2P^##K>F )C\86I4FY4CA4V5XX"CIVKKBYJ^2G()V'[H\GFZBB
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
M:PHSA9&RN]/$%$7L=\05CF2XI[/=1/'LC"V=\Y(KO;Y+KI)><I]%SR6]Y.L
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
M/V<A#3@H> -\YW$;XG7?AG@G94.\/J!R[[  G*OI\IL,^_P9GUNU&9R(<%X
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
M@)/CCQLCS=(HGB,NG4A'X4F55P1/CC>@ CR?M""_ !6>;2(=AF='7A$\V;Z
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
MY$NTD4=>O[+H=OFPEBE+F0HXJO/(V!@TVDK4;(PL&/^\\=ET9S-B&24FEN2
M77 PJ\A)HJ0-U-P3]3D%RX)XWV,N/R322&^@<Q7*4N\"O,J21:MLDVG7Q%P
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
MLH9UI(BTX,!(B""I# 73(:X L'C(WE$VJC9_/6NYXB 98QO5(1/-L]Q6Z8X
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
M.!'3N67\(B[#!@N"/6#H2Y/O\CQ7E[G,S4N&P^#70T%?5, 6&O+_4$L#!!0
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
M.=&*?R_:T*>TA*.B9G6G8X\H(=@A]-@H[Z%Y%(&C&7;,R;[X)-U$E.",^.6
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
M?6%E?#--L[4+LP696W+B=#=JH8\!QQ_#MS^X72=DHTV:#RVPB+/^&@YQ6\:
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
M-.FLW9E36' &R%WP! IS>L$BP#]A)P*U?XS,Q9[ F'_@Z >P)%D6)1LG0&0
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
M58'J(5-?VHF.UN%>%[G*J:*G^[8LT5^>#+L:6Z#1DY_)2DY'@=%Q,\*TXM*
MWQ+NQ3^&T:_U]"RNJ*C-8]JD4H*JM;7E!KY%3_1C&M,+J;@@2;_M'-];[VG&
M1K+!](W-GD!U8F4F5NH4TK;DE+K2IE6G;/4Z+B]O)?6H(Y#RE**5%R>1M]Q!
M,[CIY!!IBD'G!L=U,FGE_%R%P?=T=WO5VDJ\MC;< [%E I,:F!P4T?$7!@>_
M9:.R<KEIB':SF8WAHTZ-.]D9IX#_\!Z>1QPMPSX\.6QE"JO"$@J98OX*&IHO
MA[I&U64 6A*4>)5WI.)N7<E@LQJO&!"A S =T+IAC8M&.T<RL6C!6D/))8*6
M70YG'M']R5>=#G+18+/2( 9$<H3G!<_S(9;[UJGQHW1$R'#6D(6[I_".*/2Q
M$ZQNX2DJP3@ 54%9'EHF,'FQRT$12,7QX=&7K-S]!$X%-6[DH3;M^'9WE4"W
MG _.L_>P>U#O6=C2UZ@ZG\'GH\;BHIZH[!OK2H.0^%D?HR8RVAI!UL@N.U Z
MZ ."H893E$5P")6!['.4WP+VS_XV/A1:@ 39WG6I1^Y3*E['J*'1"HZLHOY4
ME$=EWHD[GG!4R,[GQPT&GXJ;I*9*)Y5!/-:DMB"$0AB7E'V?6A-\I<'P^='*
MA^P D:.K]Z125T!Z*8Y5,3 9LRT$1*@R'DI41MLZH[J^V)2!K@+P,?"2^ S[
MQ#J-\$J9]=QA)O<^#P!AU7[R*<J_G03+963/F"U$46^KSV]/OSC\0IG#E<]-
M/W.5%Q>EY=R>(O*-[<M<1-F,B0U,M)SW'SR?'/YA@..YN_'(SE??J<*AAG5]
M$1PB>R[_'&7?3T#7;^-#QG4ILKJZ_B):X6@174?A:N>" IB^H(^B\+<L9B&
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
M ^G,%H5DR@2OB^J48;5S0=7;L7$5!G%GN0DWEIO68Z&<PI<!N;8>F"*VW*,
M,O?(7:_X3&A!-QNCZ9(-AET&X%OU'OEMA 7/%&Q$I7P9MX>R^?<( 2Z<MP<I
MUJ8/(5DG<#X/5/J>&R=__[;G%A1466=&OHK:VCS6,.&'Z$%I@?!789 )P)D7
M83<)HUA.^JM2[ ]:96/L2[X8DSH+VG V?? 0>+XG&Y&6RBB=A268COA\./@M
M&Y;=S:)KP#PO)!AQ^-&*OX7'!7E7;^[62#4FL)^8*^2 JNG$8BJ5&7(*7=YN
MI-50#<XM.+1J\"18A3W'AT?B]O*6:5_%H(W^/'PM[)#<YW*[N&8^%W4#8XNC
M)/4G)"':92XG>;A4W1=ERQ-5PU?HB^+2Q8+WC]^Q7E.Q,D_U)OA-BHM0--UY
M4O=I'?I)T792\SC>/60OFUNBG>#5#R$4O?7)?7+C),( 1#KO :>N76EUL.O+
MWZ40( K"K-S4J@0&/%(S0% !"0)07FQM;'5JER7-.),-EF!DJ299U7.A$XYE
MV/"JHUM@?Q5F'J=X6!DD*A&/!X_U2YL'*_"]DOL.!ZZ'A7G9I2'TJ:PRR"JU
M)<CP2-^*N\DRV(V<JO>>LX3-1J"YPNW9961<7MV,?&^SQDL+*CQ6*&%O^*(D
M1E^>D'H9$ ,)PT$8Q+CM""H/1&PD>I6.?2WHVV"!3:WX\1BE2!2SU4,8(#00
M_-KQ5I+MDG*#?HK@6^N;I0D[C^PB# UWC^OY\D>$A\6OUM[^Z,O>&=$I<NU#
MY%(:0(-DL!"^9\#,4 8.2N')0QX1K1UL>9^:H[I0DS3(\S^"-92EW]JVA3(X
MJI;0'\4**E/9F W49*U))1$TUC"@'NA\RXA4=")*],,9$Y$9NB38X)7EPZR.
M@4@O;V)IZ&!02I_G74WY9DM'H31^E(QCF]BB@VK8X@%'9LNPGCL1.&'C#(0S
MS]])@L2RSPO"SU ZQ&KA2SX6//F7(FQ6X[N!*HC@)TY!DKMFLZ]1S@/+SEDY
M&CS:RQ V>=*7^MC3@MWTZ?%DW^RKO0<=BE:I;*VS4)H3%9."DL%IX[Q'9[1,
M/YT:P=R(3FZU>FP?JO#-JKY4-GL29M%A.'HD=@E?P<D5;I;?2@/ RW^'H..K
M,/D))S=Y1:YK6I7A(HQ*Y:J.5#377",MM*J2994IJK D^6V"]CA!Q:HSQ-:E
MQ2%**]MM?VR6R-SSWP*;C<BQ_?0CH4]A*3?$3E)#;-FTP_+(QB+AC("&4MB:
MOH4<O,JI"P"^U/3*/TINVI$-=]I0!NJ-%_]Z$6%\&228 )I8\CT & C@0!D@
MM6?8E^Y]X-%Y=.^#F+EF=5*7->6D-\U#WH8M22)ON4NH=A0VD2I0%CXIEF9&
MF>^"E34I3PYA.-06@JCR\_4:RIU >VRY/A+;#@'H3S;!B\ @S##L;ZT=Q]4:
M+:6R#01HSQ6)2^-.+4IJI&*S*%?4H'/952H[H<UCMP;=C)HF Y5( +%5O+&5
M[)->;T1Q7OL"P.(\$RFH<B_RQ4B#&6,\'6G+Q%0:UDD>HML:U%E^E98CQ6.V
M"AG,=N]*0TJR(G%IG,()#O#::X^GH<-H5$TZ$+U*A[ZVV\Q+BI8LMD9&"*.<
MH8# D1#A#8&$B P+;_@81-CQP5'Q;>C#9?:.;/+W81PO@EOL@AO.(PI.Y$$Q
MNS/R8W#/'!I$OA9K@IB(IXO3RQDZP\L$%=/,R"'N>#Z<+0?K,#JX=>"$+R!
M*0@(8$"O (K7>96(^>J7'7,;SI"S3IB<V-RN8U&4)T[C<L]<,TAQ.0:>DZBH
M.$$^S[1,&& U[+Q?V0G3_HYF*=WK"$-9]>R$RD+)TLJ>[/;H6,TVG3(_M2%"
ME9WE;+I)6(.=B2"T #7):3#">+  HKJ/KVH#F; &BH>-AL]WUK!!;0N:(;J/
M&C.FPG)S-\9WNP"_/83F>EFPZZ%(ZHI/4?ZM+?<^!^SZ'2'$S-BSD*RE"#?:
MIAGWCM(A+[M_BJ'@&EME+<=\@,OAT?34O+1WMY=8UM2TSDF;-.!5UK.AI5=3
M^C7*/I_9/5/D2/!N7AFZ1@-5B7U,;,+H8A>LQ(EDZ4>(?F67Q!6 N4&I38PJ
MDMRI(?!MXB1TAQ%5IE&;L9Y^,U /8+4US3X:J( D:/2;CZ4:=[/0)YN$EVUE
M0Q?OPN^*)JU,(9,YHTZ\@?\!%(^.#V^)-T1=CSP(D(<_$(NS^HO2ER(E #XC
MQRWY_ZCT]0P5$R'V"1CTM5^61]B.;^]#&^ZYTY_84TNIB>7%^UF!R/@R8/[!
MFG*1*1TT,ZN/T1^K6OT,'.I;H@"]B'PQ,_37"GP9FOTF]1IYQW7FEKBD_Q:F
M)T@;U+^"H:]GF8,Y;51HVY6DCK4TG%619B5^*BE5U)1Q-WBU\W%Z33))FKN)
M]RA4J,@PJB0=';\]HHJ2^CP&4Y&4 !*I2.E8M%A7BG"B;'SNF[)9(K43ZW+3
M59DL1A7:/$U;[;&YR$:?V".S  _!*X0897.^6<4&FSS-4WXB%YDOUNI&CM=O
MM*X;=C)B&>=S"V4DLU6TBF&E5@"&X.1--W9AH_*+?MC;VD*N-;<V'V>CQ^H5
M?IJ[+J2A0M1 % ;DGR[."_=L0+,D*D3Y&R]PO:V/X]:DN&(0L"M803(-^KB%
M3NRLNA&='32QTI?Y_.AG7F:<'<X.026>& Q'?7/7@:QX-.\.X%7*9B->=)UL
MPYG:13HE.SJR=(7VA-2T3-(LSQJQK/[P\> ?DC*<#7KEI!'B8GV _?TJ3%@U
M-#+!77B";[!/F^YJ1^#/D%RM2@U<2 K-%X;\CB6\U;&U;3IL1R$F3WQ&Y)JQ
M=^1Z1Q'> <N^L7VF=NF+8OJE4NXFR05C%U,S2Q[TI.9D*NW9=-9ZZ-+D?$U\
M,G3W.LG(:;K,0T!,K/V-\_2!J)R1Y_B2B,?TXQDBGZ/\>W!1A['E!U0N)J(+
M4X"R0;^:N/4T[_3*&V[#Y^Q!@#T36(P>Z=MBV_CY5JMJ(\WPXQ7QJ:7Q3:"&
MCS!;3X*KZ2*F.($W02(&4-1I=;+_&$."SB*KX9GZ3"$TOZVJ*4[88VLV%[R?
MO8+IB''\&N4SHF)*OMO#BFG<E0I\0UB/ED9ML/1!+;X+Y^YO.R_"I1HW(M9F
M8T !3T>ATC#;+BL92CP^M9/ [,E7Z:\JK=N7=YTM5^ZS3?XF^#RBBY T'.XG
M31EI9(!8JPC/HV M/\,DV4K5MD6T*WUBEX E0'A4;*!BF)3<J[_M;A6J.Q.)
M7Y,BI:P 66MR,%I!K7(OL.'*I645JH5ETUA)SDE8Z6-25&K6C\]*PP='(RF$
M&O6=^C[4W0"3:/Y @>*Q4H:P21],V42^P5LR]88(U&+-@FR%.G/F$@#TT:MB
M( K7K]/H8ZO&JAPMKMZL0(@7553F!W8(T%IPM'KW70B_*I7+F5*M&08M?73.
M*[@3@PQ^/:L6--),;WJ)6:C#L9 G\=.!SO0#N;S#K*";:_&FEX^Q_:(S5$_=
M(UMU_!L5O ":8P[]JS7]LU?6TD#KK;=$&/%V7CL%S.T%Z1[M>T10I[MRBF3Q
MKW2<:#>V70'E;-E>2;4I'%WNG-(_L^'V<K*GS-SZ$35E6,T?DH77MD-E>U%
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
M<WPP/H5U)<UEQ>6@H1)L"("S?#R;9X90-FW(A-%32%#)F*GUY6KON^4OV$W
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
MY(^F?(.!#S,;4=_?E;JQG&.U^-'$ZGTE;B1ZV^OI*>:':(IM#.WF2A#<VS5
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
M[RG[>XGI\K]3Q^YZN;Q68Y_#9KVV3>[Z0YB_>-E"F#Q"3R-6?/E9(!>B&ET
M2$C?P&L0 V^8/,'&R]^%6XV?NFI,Y<!ZX-*_T9GO C)BHL%( 5 B'(L":/3X
MHT1DX#.Q3.<JG@M*QRF?%@]!=$&\(LEBM12H7<R49UM>Q3LRJ8K_%*%R_'V!
M\ZW/8?WG,3)>\416XL1+(S7+/#C MI^Q=V*L<WI0U.D&K-ONGGZW)\'5@-@,
MF*^VI$0P(JJ'!*=QVF^&*HYY9K#H\IN'_9<"P[_5,EA9/AJL"\NNQ12E[]_$
M/+QG'=CIKL%6]IS0QK=,:_-I_!IKWVK0^?Y&_I]OGU1FV1HM?RZ(5O#Y1[,)
M:T0<G;%;D$4/@WS*D>W@Y$Z/W61.G9S19,5K'SWV*X07JKNGK-DL5S>X_'5;
M6/]S2UB[LJWN[I;NAGVWV[C0OYBR.RGL2NV532B7WV.C98957FCDTK#'KGDB
M_!9=*UHWXKS2JU5VHZIU@/9;V)?G;5%U"Y[E^L;G[*B:3>OQ7ORK^(K@3:^Q
M^??:Z/6W/P!02P,$%     @ 08!,6HS$:C8?!   X@T   H   !E>#,R+3$N
M:'1MY5==<^(V%'UGAO]PZYEFDAD;8]ADNMAAAF"R888%&MSM[*.P95#7EAQ9
M3L*_[Y6-^6B3=C<-3^4!L*ZN=.X]QT>V=Q=\GO2;#>]N-/#Q%_3'"\;!9-3W
M[.H7H_8V[-W,_*^P"+Y.1M=&++CJ@=/.% 0LI3E,Z1/<BY1PLQHP84$EBPU,
MQ-3YC^:YD!*Y8KP'>FK;!46?E442ML*AD')%I='W;F?3H%ZYG* DX7DL9-J#
M(LNH#$E.C?[H><V63'FVGH^ NIV6X]GS4T(;4JE8S$*BF. @8E!K"L,UHS&,
MGFE8*/9(81;C#"HA*V1>$*Z:#27 ^05^:RU:PQ;N%I;93O>R;9X8+\F!1")3
M--JA 0130_C8OJJ+6!"Y))SFUNPYH9MF8Q J'>JTVYUWPVCTS_@RS]P3%?U'
MD2,Y&Z,_YA *SK=%/C&UQA)9#@\%D=B69 .29D*6!8[R3)?[.5ZUX(RDF0NC
M!!.EX"S,82ADUH)SW:"SAT(H=RC2C/!-=7$!N/PMRA*16[\""K1L)0J4B0@H
MC[#M/@UIND0U=!T3N]GY ,A)S!(,;8%134<AF6(T;S8(CU!*X9KP%2I+I"G+
M\U)KO)P:$45A325%Z!6L)$(L;E70F2PO+DP8F^"31Q;![$SF>FQ*66+"7-*<
M12@.T/N\)EP1HV37Y?:Z6!/EI&6/?PY%](JBX:V:@P/)F1@G.JW92#?PC8LG
M;-B*]DXGQ6!P,QG!<#29S >^/YY^NC;:1GF]F ^&]?7O8S^XNS:<=OMGXZT(
M+"6R$L5N8"F4$FDYANX7W-<K/^JVAR2I!8Z)VGB]P*]G/+%(K3&Q=<FXH=W=
M[[\:=5IUO!]@\[>W0%PD>#^$R'2"^MMK4M*'@DF:HE9RS<J>XW."NI?@7)Y'
M%SLF=PK>BW=+I_.Q^\'5<JMVMX-[_:6[_3Y,5M]5B?\[3CO'G#*N#\GJ<$('
M5(1QO L9K^RO9IPP;8$96H$FU]1QDB0('+V1D03GH2>&.J*IC1DG/-3CN&+$
MRK6U>>"L(JFT(=#QRDW1O^HSL;*.UHE(?_>39*^B[9G"N+;)'EC;3OO8G1[<
MTJ7$0V0#3J=T\\N_ ]@M^P]R/)3?7^7YPW5L%:'UZ\)2R(A**Q1)0K(<$=?_
M*I']FPRK1T5_ASSP]X-UZG:+6N W"0F_@8,X<Y&P:(>GJ[MFY_8+Y]!>%/\5
M4_^DBW_7:7FTWXL:/U#$3@L_61;<,II$/9B3%761S(>"\A 9<UR89>7=U-.D
M;XW7A2\D*3#<N0++JD'ZXR_'NU1&=/6"$95C+W+7J;E#?/.CY^ZCITD7WML5
M#YI0E^]"L,FPRH$D2Q:Z,"4IK5HT%;KNSM5AEEVGZ=#^;O-L[,O;6G38@C=9
MB?$:CD/8NIZ*Q>]S#EN_HU4O;?K=[D]02P,$%     @ 08!,6KNV;)?_ P
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
MGX'NOW0P8>8?4$L! A0#%     @ 08!,6OQI8B;@T   #'D+ !
M     ( !     &5S<"TR,#(T,3(S,2YH=&U02P$"% ,4    " !!@$Q:.OMU
M-D$-   1=   $               @ $.T0  97-P+3(P,C0Q,C,Q+GAS9%!+
M 0(4 Q0    ( $& 3%K<&,3+.PP  #6%   4              "  7W>  !E
M<W M,C R-#$R,S%?8V%L+GAM;%!+ 0(4 Q0    ( $& 3%K1UPB:CR8  -I+
M @ 4              "  >KJ  !E<W M,C R-#$R,S%?9&5F+GAM;%!+ 0(4
M Q0    ( $& 3%H#%)7ZSV4  +LD!0 4              "  :L1 0!E<W M
M,C R-#$R,S%?;&%B+GAM;%!+ 0(4 Q0    ( $& 3%IR<;E4%"D  -:6 @ 4
M              "  :QW 0!E<W M,C R-#$R,S%?<')E+GAM;%!+ 0(4 Q0
M   ( $& 3%IQB2TX\ <  -TF   *              "  ?*@ 0!E>#,Q+3$N
M:'1M4$L! A0#%     @ 08!,6IQ-:#[)!P  !2<   H              ( !
M"JD! &5X,S$M,BYH=&U02P$"% ,4    " !!@$Q:C,1J-A\$  #B#0  "@
M            @ '[L $ 97@S,BTQ+FAT;5!+ 0(4 Q0    ( $& 3%J[MFR7
M_P,  (,.   *              "  4*U 0!E>#,R+3(N:'1M4$L! A0#%
M  @ 08!,6O7]? $2$0  #1(   T              ( !:;D! &EM86=E7S P
;,2YJ<&=02P4&      L "P"? @  ILH!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>esp-20241231_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/2024"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2024"
  xmlns:esp="http://espey.com/20241231"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2024"
  xmlns:us-gaap="http://fasb.org/us-gaap/2024"
  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-20241231.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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2025-02-10</instant>
        </period>
    </context>
    <context id="c2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2024-12-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>2024-10-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="c5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2023-10-01</startDate>
            <endDate>2023-12-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>2023-12-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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</instant>
        </period>
    </context>
    <context id="c13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2024-09-30</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>2024-10-01</startDate>
            <endDate>2024-12-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>2024-10-01</startDate>
            <endDate>2024-12-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>2024-10-01</startDate>
            <endDate>2024-12-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>2024-10-01</startDate>
            <endDate>2024-12-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>2024-10-01</startDate>
            <endDate>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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>2024-12-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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</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-09-30</instant>
        </period>
    </context>
    <context id="c42">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2023-09-30</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>2023-10-01</startDate>
            <endDate>2023-12-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>2023-10-01</startDate>
            <endDate>2023-12-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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-10-01</startDate>
            <endDate>2023-12-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:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c47">
        <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="c48">
        <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="c49">
        <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="c50">
        <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="c51">
        <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="c52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c53">
        <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="c54">
        <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="c55">
        <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="c56">
        <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="c57">
        <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="c58">
        <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="c59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </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">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="c61">
        <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>2023-12-31</endDate>
        </period>
    </context>
    <context id="c62">
        <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>2023-12-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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-12-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:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="c65">
        <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-12-31</instant>
        </period>
    </context>
    <context id="c66">
        <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-12-31</instant>
        </period>
    </context>
    <context id="c67">
        <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-12-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:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</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:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</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:USTreasuryBillSecuritiesMember</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:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-10-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="c72">
        <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-10-01</startDate>
            <endDate>2023-12-31</endDate>
        </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>2024-07-01</startDate>
            <endDate>2024-12-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>2023-07-01</startDate>
            <endDate>2023-12-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:IncentiveStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </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>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c77">
        <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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c78">
        <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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c79">
        <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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c80">
        <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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c81">
        <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>2024-12-31</instant>
        </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>
            </segment>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2024-12-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>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c84">
        <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>2024-12-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:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-07-01</instant>
        </period>
    </context>
    <context id="c86">
        <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="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>
            <startDate>2024-07-01</startDate>
            <endDate>2024-12-31</endDate>
        </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>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c89">
        <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-10-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="c90">
        <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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c91">
        <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-10-01</startDate>
            <endDate>2023-12-31</endDate>
        </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>2023-07-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="c93">
        <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-10-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="c94">
        <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>2024-12-31</endDate>
        </period>
    </context>
    <context id="c95">
        <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-10-01</startDate>
            <endDate>2023-12-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>2023-07-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="c97">
        <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-12-31</instant>
        </period>
    </context>
    <context id="c98">
        <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="c99">
        <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>2024-12-31</instant>
        </period>
    </context>
    <context id="c100">
        <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="c101">
        <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-10-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="c102">
        <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-10-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="c103">
        <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>2024-12-31</endDate>
        </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>2023-07-01</startDate>
            <endDate>2023-12-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-6822">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="c0" id="ixv-6823">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="c0" id="ixv-6824">2024-12-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="c0" id="ixv-6825">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="c0" id="ixv-6826">1-4383</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="c0" id="ixv-6827">ESPEY MFG. &amp; ELECTRONICS CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="c0" id="ixv-6828">NY</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="c0" id="ixv-6829">14-1387171</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="c0" id="ixv-6830">233 Ballston Avenue</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="c0" id="ixv-6831">Saratoga Springs</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="c0" id="ixv-6832">NY</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="c0" id="ixv-6833">12866</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="c0" id="ixv-6834">518</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="c0" id="ixv-6835">245-4400</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="c0" id="ixv-6836">Common Stock $.33-1/3 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="c0" id="ixv-6837">ESP</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="c0" id="ixv-6838">NYSEAMER</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="c0" id="ixv-6839">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="c0" id="ixv-6840">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="c0" id="ixv-6841">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="c0" id="ixv-6842">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="c0" id="ixv-6843">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="c0" id="ixv-6844">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="c1"
      decimals="INF"
      id="ixv-6845"
      unitRef="shares">2796758</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c2" decimals="0" id="ixv-6846" unitRef="usd">8027478</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c3" decimals="0" id="ixv-6847" unitRef="usd">4351970</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c2" decimals="0" id="ixv-6848" unitRef="usd">20264567</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" id="ixv-6849" unitRef="usd">18878631</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c2" decimals="0" id="ixv-6850" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c3" decimals="0" id="ixv-6851" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c2" decimals="0" id="ixv-6852" unitRef="usd">6993840</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c3" decimals="0" id="ixv-6853" unitRef="usd">6635490</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryRawMaterials contextRef="c2" decimals="0" id="ixv-6854" unitRef="usd">1813168</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="c3" decimals="0" id="ixv-6855" unitRef="usd">1693448</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess contextRef="c2" decimals="0" id="ixv-6856" unitRef="usd">689757</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="c3" decimals="0" id="ixv-6857" unitRef="usd">1645973</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c2" decimals="0" id="ixv-6858" unitRef="usd">15109021</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c3" decimals="0" id="ixv-6859" unitRef="usd">15904588</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryNet contextRef="c2" decimals="0" id="ixv-6860" unitRef="usd">17611946</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c3" decimals="0" id="ixv-6861" unitRef="usd">19244009</us-gaap:InventoryNet>
    <esp:DeferredTaxAssetsCurrent contextRef="c2" decimals="0" id="ixv-6862" unitRef="usd">864449</esp:DeferredTaxAssetsCurrent>
    <esp:DeferredTaxAssetsCurrent contextRef="c3" decimals="0" id="ixv-6863" unitRef="usd">895154</esp:DeferredTaxAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c2" decimals="0" id="ixv-6864" unitRef="usd">1793934</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c3" decimals="0" id="ixv-6865" unitRef="usd">3231402</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c2" decimals="0" id="ixv-6866" unitRef="usd">55556214</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c3" decimals="0" id="ixv-6867" unitRef="usd">53236656</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c2" decimals="0" id="ixv-6868" unitRef="usd">4635071</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c3" decimals="0" id="ixv-6869" unitRef="usd">3306275</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Assets contextRef="c2" decimals="0" id="ixv-6870" unitRef="usd">60191285</us-gaap:Assets>
    <us-gaap:Assets contextRef="c3" decimals="0" id="ixv-6871" unitRef="usd">56542931</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="c2" decimals="0" id="ixv-6872" unitRef="usd">2662701</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="c3" decimals="0" id="ixv-6873" unitRef="usd">3751209</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedSalariesCurrent contextRef="c2" decimals="0" id="ixv-6874" unitRef="usd">502295</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedSalariesCurrent contextRef="c3" decimals="0" id="ixv-6875" unitRef="usd">928163</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedVacationCurrent contextRef="c2" decimals="0" id="ixv-6876" unitRef="usd">534025</us-gaap:AccruedVacationCurrent>
    <us-gaap:AccruedVacationCurrent contextRef="c3" decimals="0" id="ixv-6877" unitRef="usd">511144</us-gaap:AccruedVacationCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent contextRef="c2" decimals="0" id="ixv-6878" unitRef="usd">180518</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent contextRef="c2" decimals="0" id="ixv-6879" unitRef="usd">1284491</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent contextRef="c3" decimals="0" id="ixv-6880" unitRef="usd">757552</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="c2" decimals="0" id="ixv-6881" unitRef="usd">837</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="c3" decimals="0" id="ixv-6882" unitRef="usd">56862</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c2" decimals="0" id="ixv-6883" unitRef="usd">9875627</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c3" decimals="0" id="ixv-6884" unitRef="usd">9043422</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c2" decimals="0" id="ixv-6885" unitRef="usd">334146</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c3" decimals="0" id="ixv-6886" unitRef="usd">220607</us-gaap:TaxesPayableCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c2" decimals="0" id="ixv-6887" unitRef="usd">15374640</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c3" decimals="0" id="ixv-6888" unitRef="usd">15268959</us-gaap:LiabilitiesCurrent>
    <us-gaap:Liabilities contextRef="c2" decimals="0" id="ixv-6889" unitRef="usd">15374640</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="c3" decimals="0" id="ixv-6890" unitRef="usd">15268959</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesAuthorized contextRef="c2" decimals="0" id="ixv-6891" unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="c3" decimals="0" id="ixv-6892" unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued contextRef="c2" decimals="0" id="ixv-6893" unitRef="shares">3129874</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued contextRef="c3" decimals="0" id="ixv-6894" unitRef="shares">3129874</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="c2" decimals="0" id="ixv-6895" unitRef="shares">2796758</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding contextRef="c3" decimals="0" id="ixv-6896" unitRef="shares">2733958</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesHeldInEmployeeTrustShares contextRef="c2" decimals="0" id="ixv-6897" unitRef="shares">200652</us-gaap:CommonStockSharesHeldInEmployeeTrustShares>
    <us-gaap:CommonStockSharesHeldInEmployeeTrustShares contextRef="c3" decimals="0" id="ixv-6898" unitRef="shares">211487</us-gaap:CommonStockSharesHeldInEmployeeTrustShares>
    <us-gaap:CommonStockValue contextRef="c2" decimals="0" id="ixv-6899" unitRef="usd">1043291</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="c3" decimals="0" id="ixv-6900" unitRef="usd">1043291</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c2" decimals="0" id="ixv-6901" unitRef="usd">24851718</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c3" decimals="0" id="ixv-6902" unitRef="usd">23930428</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c2" decimals="0" id="ixv-6903" unitRef="usd">5004</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c3" decimals="0" id="ixv-6904" unitRef="usd">6544</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c2" decimals="0" id="ixv-6905" unitRef="usd">28232545</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c3" decimals="0" id="ixv-6906" unitRef="usd">26004790</us-gaap:RetainedEarningsAccumulatedDeficit>
    <esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock contextRef="c2" decimals="0" id="ixv-6907" unitRef="usd">54132558</esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock>
    <esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock contextRef="c3" decimals="0" id="ixv-6908" unitRef="usd">50985053</esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock>
    <esp:UnearnedEsopSharesCost contextRef="c2" decimals="0" id="ixv-6909" unitRef="usd">3868093</esp:UnearnedEsopSharesCost>
    <esp:UnearnedEsopSharesCost contextRef="c3" decimals="0" id="ixv-6910" unitRef="usd">3868093</esp:UnearnedEsopSharesCost>
    <us-gaap:TreasuryStockCommonShares contextRef="c2" decimals="0" id="ixv-6911" unitRef="shares">333116</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares contextRef="c3" decimals="0" id="ixv-6912" unitRef="shares">395916</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue contextRef="c2" decimals="0" id="ixv-6913" unitRef="usd">5447820</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue contextRef="c3" decimals="0" id="ixv-6914" unitRef="usd">5842988</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity contextRef="c2" decimals="0" id="ixv-6915" unitRef="usd">44816645</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c3" decimals="0" id="ixv-6916" unitRef="usd">41273972</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c2" decimals="0" id="ixv-6917" unitRef="usd">60191285</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c3" decimals="0" id="ixv-6918" unitRef="usd">56542931</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues contextRef="c4" decimals="0" id="ixv-6919" unitRef="usd">13608740</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c5" decimals="0" id="ixv-6920" unitRef="usd">10302541</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c0" decimals="0" id="ixv-6921" unitRef="usd">24051958</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c6" decimals="0" id="ixv-6922" unitRef="usd">18870755</us-gaap:Revenues>
    <us-gaap:CostOfRevenue contextRef="c4" decimals="0" id="ixv-6923" unitRef="usd">10445028</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c5" decimals="0" id="ixv-6924" unitRef="usd">7159966</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c0" decimals="0" id="ixv-6925" unitRef="usd">18087364</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c6" decimals="0" id="ixv-6926" unitRef="usd">13482803</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit contextRef="c4" decimals="0" id="ixv-6927" unitRef="usd">3163712</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c5" decimals="0" id="ixv-6928" unitRef="usd">3142575</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c0" decimals="0" id="ixv-6929" unitRef="usd">5964594</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c6" decimals="0" id="ixv-6930" unitRef="usd">5387952</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c4" decimals="0" id="ixv-6931" unitRef="usd">1139275</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c5" decimals="0" id="ixv-6932" unitRef="usd">1049690</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c0" decimals="0" id="ixv-6933" unitRef="usd">2220944</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c6" decimals="0" id="ixv-6934" unitRef="usd">2073371</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss contextRef="c4" decimals="0" id="ixv-6935" unitRef="usd">2024437</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c5" decimals="0" id="ixv-6936" unitRef="usd">2092885</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c0" decimals="0" id="ixv-6937" unitRef="usd">3743650</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c6" decimals="0" id="ixv-6938" unitRef="usd">3314581</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeInterest contextRef="c4" decimals="0" id="ixv-6939" unitRef="usd">260222</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest contextRef="c5" decimals="0" id="ixv-6940" unitRef="usd">161513</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest contextRef="c0" decimals="0" id="ixv-6941" unitRef="usd">527839</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest contextRef="c6" decimals="0" id="ixv-6942" unitRef="usd">308943</us-gaap:InvestmentIncomeInterest>
    <us-gaap:OtherNonoperatingIncome contextRef="c4" decimals="0" id="ixv-6943" unitRef="usd">8203</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c5" decimals="0" id="ixv-6944" unitRef="usd">5251</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c0" decimals="0" id="ixv-6945" unitRef="usd">18994</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c6" decimals="0" id="ixv-6946" unitRef="usd">19394</us-gaap:OtherNonoperatingIncome>
    <us-gaap:NonoperatingIncomeExpense contextRef="c4" decimals="0" id="ixv-6947" unitRef="usd">268425</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c5" decimals="0" id="ixv-6948" unitRef="usd">166764</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c0" decimals="0" id="ixv-6949" unitRef="usd">546833</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c6" decimals="0" id="ixv-6950" unitRef="usd">328337</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c4" decimals="0" id="ixv-6951" unitRef="usd">2292862</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c5" decimals="0" id="ixv-6952" unitRef="usd">2259649</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c0" decimals="0" id="ixv-6953" unitRef="usd">4290483</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c6" decimals="0" id="ixv-6954" unitRef="usd">3642918</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c4" decimals="0" id="ixv-6955" unitRef="usd">384363</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c5" decimals="0" id="ixv-6956" unitRef="usd">464279</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c0" decimals="0" id="ixv-6957" unitRef="usd">783667</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c6" decimals="0" id="ixv-6958" unitRef="usd">753004</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="c4" decimals="0" id="ixv-6959" unitRef="usd">1908499</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" id="ixv-6960" unitRef="usd">1795370</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-6961" unitRef="usd">3506816</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-6962" unitRef="usd">2889914</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c4" decimals="0" id="ixv-6963" unitRef="usd">-9232</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c5" decimals="0" id="ixv-6964" unitRef="usd">3622</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c0" decimals="0" id="ixv-6965" unitRef="usd">-1540</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c6" decimals="0" id="ixv-6966" unitRef="usd">5417</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c4" decimals="0" id="ixv-6967" unitRef="usd">1899267</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c5" decimals="0" id="ixv-6968" unitRef="usd">1798992</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c0" decimals="0" id="ixv-6969" unitRef="usd">3505276</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c6" decimals="0" id="ixv-6970" unitRef="usd">2895331</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:EarningsPerShareBasic
      contextRef="c4"
      decimals="2"
      id="ixv-6971"
      unitRef="usdPershares">0.74</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c5"
      decimals="2"
      id="ixv-6972"
      unitRef="usdPershares">0.73</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c0"
      decimals="2"
      id="ixv-6973"
      unitRef="usdPershares">1.37</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c6"
      decimals="2"
      id="ixv-6974"
      unitRef="usdPershares">1.17</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c4"
      decimals="2"
      id="ixv-6975"
      unitRef="usdPershares">0.71</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c5"
      decimals="2"
      id="ixv-6976"
      unitRef="usdPershares">0.72</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c0"
      decimals="2"
      id="ixv-6977"
      unitRef="usdPershares">1.32</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c6"
      decimals="2"
      id="ixv-6978"
      unitRef="usdPershares">1.16</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c4"
      decimals="INF"
      id="ixv-6979"
      unitRef="shares">2583307</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c5"
      decimals="INF"
      id="ixv-6980"
      unitRef="shares">2478588</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c0"
      decimals="INF"
      id="ixv-6981"
      unitRef="shares">2554622</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c6"
      decimals="INF"
      id="ixv-6982"
      unitRef="shares">2474340</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c4"
      decimals="INF"
      id="ixv-6983"
      unitRef="shares">2707542</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c5"
      decimals="INF"
      id="ixv-6984"
      unitRef="shares">2499210</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c0"
      decimals="INF"
      id="ixv-6985"
      unitRef="shares">2653890</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c6"
      decimals="INF"
      id="ixv-6986"
      unitRef="shares">2492499</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c4"
      decimals="2"
      id="ixv-6987"
      unitRef="usdPershares">0.25</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c5"
      decimals="2"
      id="ixv-6988"
      unitRef="usdPershares">0.15</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c0"
      decimals="2"
      id="ixv-6989"
      unitRef="usdPershares">0.5</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c6"
      decimals="2"
      id="ixv-6990"
      unitRef="usdPershares">0.3</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockSharesOutstanding contextRef="c7" decimals="0" id="ixv-6991" unitRef="shares">2744458</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c7" decimals="0" id="ixv-6992" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c8" decimals="0" id="ixv-6993" unitRef="usd">24111147</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c9" decimals="0" id="ixv-6994" unitRef="usd">14236</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c10" decimals="0" id="ixv-6995" unitRef="usd">26969864</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c11"
      decimals="0"
      id="ixv-6996"
      unitRef="shares">385416</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c11" decimals="0" id="ixv-6997" unitRef="usd">-5777389</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c12" decimals="0" id="ixv-6998" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c13" decimals="0" id="ixv-6999" unitRef="usd">42493056</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c14" decimals="0" id="ixv-7000" unitRef="usd">1908499</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c4" decimals="0" id="ixv-7001" unitRef="usd">1908499</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c4" decimals="0" id="ixv-7002" unitRef="usd">-1939</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c15" decimals="0" id="ixv-7003" unitRef="usd">-9232</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c4" decimals="0" id="ixv-7004" unitRef="usd">-9232</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c4" decimals="0" id="ixv-7005" unitRef="usd">1899267</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c16"
      decimals="0"
      id="ixv-7006"
      unitRef="shares">52300</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c17" decimals="0" id="ixv-7007" unitRef="usd">649030</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c18"
      decimals="0"
      id="ixv-7008"
      unitRef="shares">-52300</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c18" decimals="0" id="ixv-7009" unitRef="usd">329569</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c4" decimals="0" id="ixv-7010" unitRef="usd">978599</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c17" decimals="0" id="ixv-7011" unitRef="usd">91541</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c4" decimals="0" id="ixv-7012" unitRef="usd">91541</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c4"
      decimals="2"
      id="ixv-7013"
      unitRef="usdPershares">0.25</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c14" decimals="0" id="ixv-7014" unitRef="usd">645818</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c4" decimals="0" id="ixv-7015" unitRef="usd">645818</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c19"
      decimals="0"
      id="ixv-7016"
      unitRef="shares">2796758</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c19" decimals="0" id="ixv-7017" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c20" decimals="0" id="ixv-7018" unitRef="usd">24851718</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c21" decimals="0" id="ixv-7019" unitRef="usd">5004</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c22" decimals="0" id="ixv-7020" unitRef="usd">28232545</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c23"
      decimals="0"
      id="ixv-7021"
      unitRef="shares">333116</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c23" decimals="0" id="ixv-7022" unitRef="usd">-5447820</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c24" decimals="0" id="ixv-7023" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c2" decimals="0" id="ixv-7024" unitRef="usd">44816645</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c25"
      decimals="0"
      id="ixv-7025"
      unitRef="shares">2733958</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c25" decimals="0" id="ixv-7026" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c26" decimals="0" id="ixv-7027" unitRef="usd">23930428</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c27" decimals="0" id="ixv-7028" unitRef="usd">6544</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c28" decimals="0" id="ixv-7029" unitRef="usd">26004790</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c29"
      decimals="0"
      id="ixv-7030"
      unitRef="shares">395916</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c29" decimals="0" id="ixv-7031" unitRef="usd">-5842988</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c30" decimals="0" id="ixv-7032" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c3" decimals="0" id="ixv-7033" unitRef="usd">41273972</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c31" decimals="0" id="ixv-7034" unitRef="usd">3506816</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-7035" unitRef="usd">3506816</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c0" decimals="0" id="ixv-7036" unitRef="usd">-323</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c32" decimals="0" id="ixv-7037" unitRef="usd">-1540</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c0" decimals="0" id="ixv-7038" unitRef="usd">-1540</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c0" decimals="0" id="ixv-7039" unitRef="usd">3505276</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c33"
      decimals="0"
      id="ixv-7040"
      unitRef="shares">62800</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c34" decimals="0" id="ixv-7041" unitRef="usd">728257</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c35"
      decimals="0"
      id="ixv-7042"
      unitRef="shares">-62800</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c35" decimals="0" id="ixv-7043" unitRef="usd">395168</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c0" decimals="0" id="ixv-7044" unitRef="usd">1123425</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c34" decimals="0" id="ixv-7045" unitRef="usd">193033</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c0" decimals="0" id="ixv-7046" unitRef="usd">193033</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c0"
      decimals="2"
      id="ixv-7047"
      unitRef="usdPershares">0.5</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c31" decimals="0" id="ixv-7048" unitRef="usd">1279061</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c0" decimals="0" id="ixv-7049" unitRef="usd">1279061</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c19"
      decimals="0"
      id="ixv-7050"
      unitRef="shares">2796758</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c19" decimals="0" id="ixv-7051" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c20" decimals="0" id="ixv-7052" unitRef="usd">24851718</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c21" decimals="0" id="ixv-7053" unitRef="usd">5004</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c22" decimals="0" id="ixv-7054" unitRef="usd">28232545</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c23"
      decimals="0"
      id="ixv-7055"
      unitRef="shares">333116</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c23" decimals="0" id="ixv-7056" unitRef="usd">-5447820</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c24" decimals="0" id="ixv-7057" unitRef="usd">-3868093</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c2" decimals="0" id="ixv-7058" unitRef="usd">44816645</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c36"
      decimals="0"
      id="ixv-7059"
      unitRef="shares">2706633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c36" decimals="0" id="ixv-7060" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c37" decimals="0" id="ixv-7061" unitRef="usd">23373388</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c38" decimals="0" id="ixv-7062" unitRef="usd">-634</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c39" decimals="0" id="ixv-7063" unitRef="usd">22591316</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c40"
      decimals="0"
      id="ixv-7064"
      unitRef="shares">423241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c40" decimals="0" id="ixv-7065" unitRef="usd">-6013701</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c41" decimals="0" id="ixv-7066" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c42" decimals="0" id="ixv-7067" unitRef="usd">36720282</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c43" decimals="0" id="ixv-7068" unitRef="usd">1795370</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" id="ixv-7069" unitRef="usd">1795370</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c5" decimals="0" id="ixv-7070" unitRef="usd">761</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c44" decimals="0" id="ixv-7071" unitRef="usd">3622</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c5" decimals="0" id="ixv-7072" unitRef="usd">3622</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c5" decimals="0" id="ixv-7073" unitRef="usd">1798992</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c45" decimals="0" id="ixv-7074" unitRef="usd">75502</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c5" decimals="0" id="ixv-7075" unitRef="usd">75502</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c5"
      decimals="2"
      id="ixv-7076"
      unitRef="usdPershares">0.15</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c43" decimals="0" id="ixv-7077" unitRef="usd">370947</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c5" decimals="0" id="ixv-7078" unitRef="usd">370947</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c46"
      decimals="0"
      id="ixv-7079"
      unitRef="shares">2706633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c46" decimals="0" id="ixv-7080" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c47" decimals="0" id="ixv-7081" unitRef="usd">23448890</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c48" decimals="0" id="ixv-7082" unitRef="usd">2988</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c49" decimals="0" id="ixv-7083" unitRef="usd">24015739</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c50"
      decimals="0"
      id="ixv-7084"
      unitRef="shares">423241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c50" decimals="0" id="ixv-7085" unitRef="usd">-6013701</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c51" decimals="0" id="ixv-7086" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c52" decimals="0" id="ixv-7087" unitRef="usd">38223829</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c53"
      decimals="0"
      id="ixv-7088"
      unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c53" decimals="0" id="ixv-7089" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c54" decimals="0" id="ixv-7090" unitRef="usd">23283245</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c55" decimals="0" id="ixv-7091" unitRef="usd">-2429</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c56" decimals="0" id="ixv-7092" unitRef="usd">21867720</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c57"
      decimals="0"
      id="ixv-7093"
      unitRef="shares">427241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c57" decimals="0" id="ixv-7094" unitRef="usd">-6038691</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c58" decimals="0" id="ixv-7095" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c59" decimals="0" id="ixv-7096" unitRef="usd">35879758</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c60" decimals="0" id="ixv-7097" unitRef="usd">2889914</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7098" unitRef="usd">2889914</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c6" decimals="0" id="ixv-7099" unitRef="usd">1138</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c61" decimals="0" id="ixv-7100" unitRef="usd">5417</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c6" decimals="0" id="ixv-7101" unitRef="usd">5417</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c6" decimals="0" id="ixv-7102" unitRef="usd">2895331</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c62"
      decimals="0"
      id="ixv-7103"
      unitRef="shares">4000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c63" decimals="0" id="ixv-7104" unitRef="usd">34490</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c64"
      decimals="0"
      id="ixv-7105"
      unitRef="shares">-4000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c64" decimals="0" id="ixv-7106" unitRef="usd">24990</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c6" decimals="0" id="ixv-7107" unitRef="usd">59480</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c63" decimals="0" id="ixv-7108" unitRef="usd">131155</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition contextRef="c6" decimals="0" id="ixv-7109" unitRef="usd">131155</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c6"
      decimals="2"
      id="ixv-7110"
      unitRef="usdPershares">0.3</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStock contextRef="c60" decimals="0" id="ixv-7111" unitRef="usd">741895</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock contextRef="c6" decimals="0" id="ixv-7112" unitRef="usd">741895</us-gaap:DividendsCommonStock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c46"
      decimals="0"
      id="ixv-7113"
      unitRef="shares">2706633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c46" decimals="0" id="ixv-7114" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c47" decimals="0" id="ixv-7115" unitRef="usd">23448890</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c48" decimals="0" id="ixv-7116" unitRef="usd">2988</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c49" decimals="0" id="ixv-7117" unitRef="usd">24015739</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c50"
      decimals="0"
      id="ixv-7118"
      unitRef="shares">423241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c50" decimals="0" id="ixv-7119" unitRef="usd">-6013701</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c51" decimals="0" id="ixv-7120" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c52" decimals="0" id="ixv-7121" unitRef="usd">38223829</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" id="ixv-7122" unitRef="usd">3506816</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7123" unitRef="usd">2889914</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation contextRef="c0" decimals="0" id="ixv-7124" unitRef="usd">193033</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c6" decimals="0" id="ixv-7125" unitRef="usd">131155</us-gaap:ShareBasedCompensation>
    <us-gaap:Depreciation contextRef="c0" decimals="0" id="ixv-7126" unitRef="usd">219126</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="c6" decimals="0" id="ixv-7127" unitRef="usd">233526</us-gaap:Depreciation>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c0" decimals="0" id="ixv-7128" unitRef="usd">286262</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c6" decimals="0" id="ixv-7129" unitRef="usd">183364</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c0" decimals="0" id="ixv-7130" unitRef="usd">30705</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c6" decimals="0" id="ixv-7131" unitRef="usd">-212848</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c6" decimals="0" id="ixv-7132" unitRef="usd">150</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c0" decimals="0" id="ixv-7133" unitRef="usd">358350</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c6" decimals="0" id="ixv-7134" unitRef="usd">205985</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c6" decimals="0" id="ixv-7135" unitRef="usd">-35666</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c0" decimals="0" id="ixv-7136" unitRef="usd">-1632063</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c6" decimals="0" id="ixv-7137" unitRef="usd">-2027322</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c0" decimals="0" id="ixv-7138" unitRef="usd">-1437468</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c6" decimals="0" id="ixv-7139" unitRef="usd">-385089</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c0" decimals="0" id="ixv-7140" unitRef="usd">-1088509</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c6" decimals="0" id="ixv-7141" unitRef="usd">892011</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedSalaries contextRef="c0" decimals="0" id="ixv-7142" unitRef="usd">-425868</us-gaap:IncreaseDecreaseInAccruedSalaries>
    <us-gaap:IncreaseDecreaseInAccruedSalaries contextRef="c6" decimals="0" id="ixv-7143" unitRef="usd">-382530</us-gaap:IncreaseDecreaseInAccruedSalaries>
    <esp:IncreaseDecreaseInVacationAccrual contextRef="c0" decimals="0" id="ixv-7144" unitRef="usd">22881</esp:IncreaseDecreaseInVacationAccrual>
    <esp:IncreaseDecreaseInVacationAccrual contextRef="c6" decimals="0" id="ixv-7145" unitRef="usd">-163645</esp:IncreaseDecreaseInVacationAccrual>
    <esp:IncreaseDecreaseinESOPPayable contextRef="c0" decimals="0" id="ixv-7146" unitRef="usd">-105744</esp:IncreaseDecreaseinESOPPayable>
    <esp:IncreaseDecreaseinESOPPayable contextRef="c6" decimals="0" id="ixv-7147" unitRef="usd">-70093</esp:IncreaseDecreaseinESOPPayable>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="c0" decimals="0" id="ixv-7148" unitRef="usd">526939</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="c6" decimals="0" id="ixv-7149" unitRef="usd">436356</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld contextRef="c0" decimals="0" id="ixv-7150" unitRef="usd">-56025</esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld>
    <esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld contextRef="c6" decimals="0" id="ixv-7151" unitRef="usd">-11786</esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c0" decimals="0" id="ixv-7152" unitRef="usd">832205</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c6" decimals="0" id="ixv-7153" unitRef="usd">-457836</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable contextRef="c0" decimals="0" id="ixv-7154" unitRef="usd">113539</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable contextRef="c6" decimals="0" id="ixv-7155" unitRef="usd">229625</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c0" decimals="0" id="ixv-7156" unitRef="usd">6766541</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c6" decimals="0" id="ixv-7157" unitRef="usd">5939155</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c0" decimals="0" id="ixv-7158" unitRef="usd">1547922</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c6" decimals="0" id="ixv-7159" unitRef="usd">3469630</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <esp:ProceedsFromGrantAward contextRef="c6" decimals="0" id="ixv-7160" unitRef="usd">968722</esp:ProceedsFromGrantAward>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c6" decimals="0" id="ixv-7161" unitRef="usd">150</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c0" decimals="0" id="ixv-7162" unitRef="usd">14007475</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c6" decimals="0" id="ixv-7163" unitRef="usd">13410242</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities contextRef="c0" decimals="0" id="ixv-7164" unitRef="usd">12620000</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities contextRef="c6" decimals="0" id="ixv-7165" unitRef="usd">11508438</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c0" decimals="0" id="ixv-7166" unitRef="usd">-2935397</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c6" decimals="0" id="ixv-7167" unitRef="usd">-4402562</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c0" decimals="0" id="ixv-7168" unitRef="usd">1279061</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c6" decimals="0" id="ixv-7169" unitRef="usd">741895</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:ProceedsFromRepurchaseOfEquity contextRef="c0" decimals="0" id="ixv-7170" unitRef="usd">1123425</us-gaap:ProceedsFromRepurchaseOfEquity>
    <us-gaap:ProceedsFromRepurchaseOfEquity contextRef="c6" decimals="0" id="ixv-7171" unitRef="usd">59480</us-gaap:ProceedsFromRepurchaseOfEquity>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c0" decimals="0" id="ixv-7172" unitRef="usd">-155636</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c6" decimals="0" id="ixv-7173" unitRef="usd">-682415</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="c0" decimals="0" id="ixv-7174" unitRef="usd">3675508</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="c6" decimals="0" id="ixv-7175" unitRef="usd">854178</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c3" decimals="0" id="ixv-7176" unitRef="usd">4351970</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c59" decimals="0" id="ixv-7177" unitRef="usd">2748755</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c2" decimals="0" id="ixv-7178" unitRef="usd">8027478</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c52" decimals="0" id="ixv-7179" unitRef="usd">3602933</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:IncomeTaxesPaidNet contextRef="c0" decimals="0" id="ixv-7180" unitRef="usd">639014</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet contextRef="c6" decimals="0" id="ixv-7181" unitRef="usd">702000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock contextRef="c0" id="ixv-5090">&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-5097">&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 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;&#x25aa;&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;&#x25aa;&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;&#x25aa;&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 December 31, 2024 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 December 31, 2024 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 December 31, 2024 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"&gt;
    &lt;td style="text-decoration: underline"&gt;December 31, 2024&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;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;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;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; background-color: rgb(204,238,255)"&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;19,028,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;19,028,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; "&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,476&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,797&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,459&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,136,814&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; 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;95,756&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;3,997&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-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;99,753&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 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;20,258,232&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;9,794&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,459&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;20,264,567&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: none; 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; "&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; background-color: rgb(204,238,255)"&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-12"&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-13"&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; "&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; background-color: rgb(204,238,255)"&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;510,288&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,773&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;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="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 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 December 31, 2024, 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 December 31, 2024 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;December 31, 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; "&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;18,116,028&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;2,148,539&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;20,264,567&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-7182">The cost, gross unrealized gains, gross unrealized losses and fair
value of available-for-sale debt securities by major security type at December 31, 2024 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"&gt;
    &lt;td style="text-decoration: underline"&gt;December 31, 2024&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;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;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;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; background-color: rgb(204,238,255)"&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;19,028,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;19,028,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; "&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,476&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,797&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,459&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,136,814&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; 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;95,756&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;3,997&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-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;99,753&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 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;20,258,232&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;9,794&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,459&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;20,264,567&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: none; 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; "&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; background-color: rgb(204,238,255)"&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-12"&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-13"&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; "&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; background-color: rgb(204,238,255)"&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;510,288&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,773&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;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="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 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="c65" decimals="0" id="ixv-7183" unitRef="usd">19028000</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c65" decimals="0" id="ixv-7184" unitRef="usd">19028000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c66" decimals="0" id="ixv-7185" unitRef="usd">1134476</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c66" decimals="0" id="ixv-7186" unitRef="usd">5797</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c66" decimals="0" id="ixv-7187" unitRef="usd">3459</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c66" decimals="0" id="ixv-7188" unitRef="usd">1136814</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c67" decimals="0" id="ixv-7189" unitRef="usd">95756</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c67" decimals="0" id="ixv-7190" unitRef="usd">3997</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c67" decimals="0" id="ixv-7191" unitRef="usd">99753</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c2" decimals="0" id="ixv-7192" unitRef="usd">20258232</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c2" decimals="0" id="ixv-7193" unitRef="usd">9794</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c2" decimals="0" id="ixv-7194" unitRef="usd">3459</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c2" decimals="0" id="ixv-7195" unitRef="usd">20264567</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c68" decimals="0" id="ixv-7196" unitRef="usd">17651000</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c68" decimals="0" id="ixv-7197" unitRef="usd">17651000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c69" decimals="0" id="ixv-7198" unitRef="usd">709059</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c69" decimals="0" id="ixv-7199" unitRef="usd">5824</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c69" decimals="0" id="ixv-7200" unitRef="usd">3313</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c69" decimals="0" id="ixv-7201" unitRef="usd">711570</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c70" decimals="0" id="ixv-7202" unitRef="usd">510288</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c70" decimals="0" id="ixv-7203" unitRef="usd">5773</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c70" decimals="0" id="ixv-7204" unitRef="usd">516061</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="c3" decimals="0" id="ixv-7205" unitRef="usd">18870347</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c3" decimals="0" id="ixv-7206" unitRef="usd">11597</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c3" decimals="0" id="ixv-7207" unitRef="usd">3313</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" id="ixv-7208" unitRef="usd">18878631</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock contextRef="c0" id="ixv-5384">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"&gt;As of December 31, 2024 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;December 31, 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; "&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;18,116,028&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;2,148,539&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;20,264,567&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-7209" unitRef="usd">18116028</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue contextRef="c2" decimals="0" id="ixv-7210" unitRef="usd">2148539</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c2" decimals="0" id="ixv-7211" unitRef="usd">20264567</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c3" decimals="0" id="ixv-7212" unitRef="usd">17889582</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue contextRef="c3" decimals="0" id="ixv-7213" unitRef="usd">989049</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" id="ixv-7214" unitRef="usd">18878631</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:EarningsPerShareTextBlock contextRef="c0" id="ixv-5491">&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 0 shares of our common stock for the three and six
months ended December 31, 2024 and 149,531 shares for the three and six months ended December 31, 2023, 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 six month
periods ended December 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;2024&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;2023&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;3,506,816&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;2,889,914&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;29,384&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,523&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;2,767&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;2,830&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,554,622&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,474,340&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;29,384&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,523&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;2,767&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,830&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,268&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;18,159&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,653,890&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,492,499&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-7215" unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c6" decimals="0" id="ixv-7216" unitRef="shares">149531</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c5" decimals="0" id="ixv-7217" unitRef="shares">149531</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="c0" id="ixv-5496">&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 six month
periods ended December 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;2024&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;2023&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;3,506,816&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;2,889,914&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;29,384&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,523&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;2,767&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;2,830&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,554,622&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,474,340&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;29,384&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,523&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;2,767&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,830&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,268&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;18,159&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,653,890&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,492,499&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="c0" decimals="0" id="ixv-7218" unitRef="usd">3506816</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c6" decimals="0" id="ixv-7219" unitRef="usd">2889914</us-gaap:NetIncomeLoss>
    <us-gaap:ExcessStockSharesOutstanding contextRef="c2" decimals="0" id="ixv-7220" unitRef="shares">2733958</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:ExcessStockSharesOutstanding
      contextRef="c52"
      decimals="0"
      id="ixv-7221"
      unitRef="shares">2702633</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c0" decimals="0" id="ixv-7222" unitRef="shares">211487</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c6" decimals="0" id="ixv-7223" unitRef="shares">233646</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c0" decimals="0" id="ixv-7224" unitRef="shares">29384</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c6" decimals="0" id="ixv-7225" unitRef="shares">2523</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic contextRef="c0" decimals="0" id="ixv-7226" unitRef="shares">2767</us-gaap:WeightedAverageNumberOfSharesIssuedBasic>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic contextRef="c6" decimals="0" id="ixv-7227" unitRef="shares">2830</us-gaap:WeightedAverageNumberOfSharesIssuedBasic>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation contextRef="c0" decimals="0" id="ixv-7228" unitRef="shares">2554622</us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation contextRef="c6" decimals="0" id="ixv-7229" unitRef="shares">2474340</us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation>
    <us-gaap:ExcessStockSharesOutstanding contextRef="c2" decimals="0" id="ixv-7230" unitRef="shares">2733958</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:ExcessStockSharesOutstanding
      contextRef="c52"
      decimals="0"
      id="ixv-7231"
      unitRef="shares">2702633</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c0" decimals="0" id="ixv-7232" unitRef="shares">211487</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan contextRef="c6" decimals="0" id="ixv-7233" unitRef="shares">233646</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c0" decimals="0" id="ixv-7234" unitRef="shares">29384</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c6" decimals="0" id="ixv-7235" unitRef="shares">2523</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c0" decimals="0" id="ixv-7236" unitRef="shares">2767</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c6" decimals="0" id="ixv-7237" unitRef="shares">2830</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c0" decimals="0" id="ixv-7238" unitRef="shares">99268</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c6" decimals="0" id="ixv-7239" unitRef="shares">18159</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c0" decimals="0" id="ixv-7240" unitRef="shares">2653890</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c6" decimals="0" id="ixv-7241" unitRef="shares">2492499</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="c0" id="ixv-5721">&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 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 December 31, 2024 and 2023 was $91,541 and $75,502, 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 December 31, 2024 and 2023 was $8,362 and $10,290, respectively. The deferred tax benefit related to
the NQSOs as of December 31, 2024 and 2023 was approximately $1,756 and $2,161, respectively. Total stock-based compensation expense recognized
in the statements of comprehensive income for the six-month periods ended December 31, 2024 and 2023 was $193,033 and $131,155, respectively,
before income taxes. The amount of this stock-based compensation expense related to NQSOs for the six-month periods ended December 31,
2024 and 2023 was $15,421 and $18,545, respectively. The deferred tax benefit related to the NQSOs as of December 31, 2024 and 2023 was
approximately $3,238 and $3,894, 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 December 31, 2024, there was $423,041 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 $385,833 relates to ISOs and $37,208 relates to NQSOs. The total deferred tax benefit related to these awards is expected to be
$7,814.&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 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 December
31, 2024, options covering 87,375 shares have been exercised and options covering 307,656 shares are outstanding. Options covering 4,969
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 December 31, 2024, 27,600 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 six months ended December 31, 2024 and 2023.&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;December 31, 2024&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;December 31, 2023&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: justify"&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: justify"&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;33.33%&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: justify"&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: justify"&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 style="text-align: justify"&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.40&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"&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.50 per share for the six months ended December 31, 2024 and paid $0.30 cash dividends for the six months ended December 31,
2023. 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 six months ended December 31, 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; margin-left: auto; margin-right: auto; border-spacing: 0px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap; text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&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%; padding-bottom: 1pt"&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-15"&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 style="padding-bottom: 1pt"&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;76,500&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.58&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.52&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;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;(62,800&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.89&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-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;&#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-17"&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 December 31, 2024&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;335,256&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.23&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.95&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;3,661,427&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 December 31, 2024&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;320,083&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.19&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.84&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;3,507,361&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 December 31, 2024&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;180,356&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.26&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;5.09&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,964,248&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 December 31, 2024 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 December 31, 2024. This amount changes based on the
fair market value of the Company&#x2019;s common stock. The intrinsic value of options exercised during the six months ended December 31,
2024 and 2023 was $668,878 and $9,482, respectively.&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"&gt;The following table summarizes changes in non-vested stock options
during the six months ended December 31, 2024:&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;76,500&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.40&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;(68,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.11&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 December 31, 2024&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;154,900&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.78&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-7242" unitRef="usd">91541</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c5" decimals="0" id="ixv-7243" unitRef="usd">75502</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c71" decimals="0" id="ixv-7244" unitRef="usd">8362</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c72" decimals="0" id="ixv-7245" unitRef="usd">10290</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c71" decimals="0" id="ixv-7246" unitRef="usd">1756</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c72" decimals="0" id="ixv-7247" unitRef="usd">2161</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c0" decimals="0" id="ixv-7248" unitRef="usd">193033</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c6" decimals="0" id="ixv-7249" unitRef="usd">131155</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c73" decimals="0" id="ixv-7250" unitRef="usd">15421</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c74" decimals="0" id="ixv-7251" unitRef="usd">18545</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c73" decimals="0" id="ixv-7252" unitRef="usd">3238</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c74" decimals="0" id="ixv-7253" unitRef="usd">3894</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c2" decimals="0" id="ixv-7254" unitRef="usd">423041</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="c0" id="ixv-7255">P1Y9M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c75" decimals="0" id="ixv-7256" unitRef="usd">385833</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c76" decimals="0" id="ixv-7257" unitRef="usd">37208</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:DeferredOtherTaxExpenseBenefit contextRef="c0" decimals="0" id="ixv-7258" unitRef="usd">7814</us-gaap:DeferredOtherTaxExpenseBenefit>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease
      contextRef="c77"
      decimals="INF"
      id="ixv-7259"
      unitRef="shares">133000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease
      contextRef="c78"
      decimals="INF"
      id="ixv-7260"
      unitRef="shares">13300</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease>
    <esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear contextRef="c78" id="ixv-7261">33 1/3%</esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease
      contextRef="c79"
      decimals="INF"
      id="ixv-7262"
      unitRef="shares">15000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNumberOfSharesPeriodIncreaseDecrease>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c0" id="ixv-7263">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c80" id="ixv-7264">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c81"
      decimals="INF"
      id="ixv-7266"
      unitRef="shares">400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c82"
      decimals="0"
      id="ixv-7267"
      unitRef="shares">87375</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c83"
      decimals="0"
      id="ixv-7268"
      unitRef="shares">307656</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="c2" decimals="0" id="ixv-7269" unitRef="shares">4969</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber
      contextRef="c84"
      decimals="INF"
      id="ixv-7270"
      unitRef="shares">27600</esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="c0" id="ixv-5735">&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 six months ended December 31, 2024 and 2023.&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;December 31, 2024&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;December 31, 2023&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: justify"&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: justify"&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;33.33%&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: justify"&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: justify"&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 style="text-align: justify"&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.40&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-7271" unitRef="pure">0.0379</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c6" decimals="4" id="ixv-7272" unitRef="pure">0.0363</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c0" decimals="4" id="ixv-7273" unitRef="pure">0.3333</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c6" decimals="4" id="ixv-7274" unitRef="pure">0.312</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c0" decimals="4" id="ixv-7275" unitRef="pure">0.0435</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c6" decimals="4" id="ixv-7276" unitRef="pure">0.0439</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c0" id="ixv-7277">P5Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c6" id="ixv-7278">P5Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="2"
      id="ixv-7279"
      unitRef="usdPershares">5.4</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c6"
      decimals="2"
      id="ixv-7280"
      unitRef="usdPershares">4.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <esp:DividendPayableAmountPerShare
      contextRef="c0"
      decimals="2"
      id="ixv-7281"
      unitRef="usdPershares">0.5</esp:DividendPayableAmountPerShare>
    <esp:DividendPayableAmountPerShare
      contextRef="c6"
      decimals="2"
      id="ixv-7282"
      unitRef="usdPershares">0.3</esp:DividendPayableAmountPerShare>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="c0" id="ixv-5814">&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 six months ended December 31, 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; margin-left: auto; margin-right: auto; border-spacing: 0px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="white-space: nowrap; text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt; &lt;td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&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%; padding-bottom: 1pt"&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-15"&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 style="padding-bottom: 1pt"&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;76,500&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.58&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.52&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;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;(62,800&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.89&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-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;&#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-17"&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 December 31, 2024&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;335,256&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.23&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.95&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;3,661,427&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 December 31, 2024&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;320,083&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.19&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.84&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;3,507,361&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 December 31, 2024&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;180,356&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.26&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;5.09&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,964,248&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="c85"
      decimals="INF"
      id="ixv-7283"
      unitRef="shares">322056</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c85"
      decimals="2"
      id="ixv-7284"
      unitRef="usdPershares">18.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="c86" id="ixv-7285">P6Y7M2D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c87"
      decimals="INF"
      id="ixv-7286"
      unitRef="shares">76500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="c87"
      decimals="2"
      id="ixv-7287"
      unitRef="usdPershares">21.58</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <esp:WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted contextRef="c87" id="ixv-7288">P9Y6M7D</esp:WeightedAverageRemainingContrSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsGrantedWeightedAverageRemainingContractualTermactualTermGranted>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c87"
      decimals="INF"
      id="ixv-7289"
      unitRef="shares">62800</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="c87"
      decimals="2"
      id="ixv-7290"
      unitRef="usdPershares">17.89</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="c87"
      decimals="INF"
      id="ixv-7291"
      unitRef="shares">500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="c87"
      decimals="2"
      id="ixv-7292"
      unitRef="usdPershares">16.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c88"
      decimals="INF"
      id="ixv-7293"
      unitRef="shares">335256</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c88"
      decimals="2"
      id="ixv-7294"
      unitRef="usdPershares">19.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="c87" id="ixv-7295">P6Y11M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="c88" decimals="0" id="ixv-7296" unitRef="usd">3661427</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="c88"
      decimals="INF"
      id="ixv-7297"
      unitRef="shares">320083</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="c88"
      decimals="2"
      id="ixv-7298"
      unitRef="usdPershares">19.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="c87" id="ixv-7299">P6Y10M2D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="c88" decimals="0" id="ixv-7300" unitRef="usd">3507361</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="c88"
      decimals="INF"
      id="ixv-7301"
      unitRef="shares">180356</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="c88"
      decimals="2"
      id="ixv-7302"
      unitRef="usdPershares">19.26</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="c87" id="ixv-7303">P5Y1M2D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 contextRef="c88" decimals="0" id="ixv-7304" unitRef="usd">1964248</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c0" decimals="0" id="ixv-7305" unitRef="usd">668878</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c6" decimals="0" id="ixv-7306" unitRef="usd">9482</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock contextRef="c0" id="ixv-6004">&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 six months ended December 31, 2024:&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;76,500&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.40&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;(68,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.11&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 December 31, 2024&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;154,900&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.78&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-7307"
      unitRef="shares">147300</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c3"
      decimals="INF"
      id="ixv-7308"
      unitRef="usdPershares">4.15</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c0"
      decimals="INF"
      id="ixv-7309"
      unitRef="shares">76500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="INF"
      id="ixv-7310"
      unitRef="usdPershares">5.4</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
      contextRef="c0"
      decimals="INF"
      id="ixv-7311"
      unitRef="shares">68400</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="INF"
      id="ixv-7312"
      unitRef="usdPershares">4.11</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="c0"
      decimals="INF"
      id="ixv-7313"
      unitRef="shares">500</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="c0"
      decimals="INF"
      id="ixv-7314"
      unitRef="usdPershares">4.03</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7315"
      unitRef="shares">154900</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c2"
      decimals="INF"
      id="ixv-7316"
      unitRef="usdPershares">4.78</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c0" id="ixv-6085">&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 December 31, 2024 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, also 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;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, with completion slated for the first quarter of calendar
year 2025. 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 will record the receipt of milestone payments received as a
reduction from the cost of the assets. The Company will have 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 December 31, 2024, 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 December 31, 2024 was $2,311,788
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 December 31, 2024 was approximately $11,770 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 December 31, 2024 and June 30, 2024 totaled $561,852 and $772,157, respectively, shown within the accounts payable
balance on the Company&#x2019;s balance sheets. The remaining liability of $561,852 is expected to be paid in the second half of fiscal
2025. As the Company was the only remaining contributing employer to the multiemployer pension plan, its withdrawal constitutes a mass
withdrawal termination. Final withdrawal calculations are contingent upon the availability of January 1, 2025 assets and the finalization
of December 31, 2024 liabilities as the withdrawal liability will need to be re-determined based on a December 31, 2024 measurement date.
The Company does not expect future adjustments to the established liability to have a material impact on the Company&#x2019;s financial
statements. The cost of the withdrawal liability obligation is recorded in indirect overhead product costs, capitalized in inventory and
expensed through cost of sales based on shipments.&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. There are currently
no expenditures or amounts that are considered reimbursable under this grant.&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LettersOfCreditOutstandingAmount contextRef="c2" decimals="0" id="ixv-7317" unitRef="usd">0</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:LettersOfCreditOutstandingAmount contextRef="c59" decimals="0" id="ixv-7318" unitRef="usd">0</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:CustomerFunds contextRef="c59" decimals="-5" id="ixv-7319" unitRef="usd">7400000</us-gaap:CustomerFunds>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet contextRef="c2" decimals="0" id="ixv-7320" unitRef="usd">888032</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsGross contextRef="c2" decimals="0" id="ixv-7321" unitRef="usd">4228722</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c2" decimals="0" id="ixv-7322" unitRef="usd">2311788</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c59" decimals="0" id="ixv-7323" unitRef="usd">965392</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c2" decimals="0" id="ixv-7324" unitRef="usd">11770</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c59" decimals="0" id="ixv-7325" unitRef="usd">272560</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <esp:TerminationWithdrawalObligation contextRef="c2" decimals="0" id="ixv-7326" unitRef="usd">561852</esp:TerminationWithdrawalObligation>
    <esp:TerminationWithdrawalObligation contextRef="c59" decimals="0" id="ixv-7327" unitRef="usd">772157</esp:TerminationWithdrawalObligation>
    <us-gaap:FinanceLeaseLiability contextRef="c59" decimals="0" id="ixv-7328" unitRef="usd">561852</us-gaap:FinanceLeaseLiability>
    <us-gaap:CustomerFunds contextRef="c2" decimals="-5" id="ixv-7329" unitRef="usd">3400000</us-gaap:CustomerFunds>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="c0" id="ixv-6113">&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;Total revenue recognized for the three and six
months ended December 31, 2024 based on units delivered was $9,237,688 and $17,500,184, respectively, compared to $8,237,156 and $14,642,694
for the same period in fiscal year 2024. Total revenue recognized for the three and six months ended December 31, 2024 based on milestones
achieved was $4,371,052 and $6,551,774, respectively, compared to $2,065,385 and $4,228,061 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 December 31, 2024. 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 $9,875,627 and $9,043,422
as of December 31, 2024 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. Revenue recognized that was in contract liabilities in the beginning
of the fiscal year was $2,377,108 for the six months ended December 31, 2024. 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 December 31, 2024
totaling approximately $120.1 million is currently estimated to be recognized in the following fiscal years: 16.6% in 2025; 37.4% in 2026;
7.6% in 2027, and 38.4% 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="c89" decimals="0" id="ixv-7330" unitRef="usd">9237688</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c90" decimals="0" id="ixv-7331" unitRef="usd">17500184</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c91" decimals="0" id="ixv-7332" unitRef="usd">8237156</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c92" decimals="0" id="ixv-7333" unitRef="usd">14642694</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c93" decimals="0" id="ixv-7334" unitRef="usd">4371052</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c94" decimals="0" id="ixv-7335" unitRef="usd">6551774</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c95" decimals="0" id="ixv-7336" unitRef="usd">2065385</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c96" decimals="0" id="ixv-7337" unitRef="usd">4228061</us-gaap:Revenues>
    <us-gaap:ContractWithCustomerLiability contextRef="c97" decimals="0" id="ixv-7338" unitRef="usd">9875627</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability contextRef="c98" decimals="0" id="ixv-7339" unitRef="usd">9043422</us-gaap:ContractWithCustomerLiability>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c0" decimals="0" id="ixv-7340" unitRef="usd">2377108</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <esp:ContractTerm contextRef="c0" id="ixv-7341">P1Y</esp:ContractTerm>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c99" decimals="-5" id="ixv-7342" unitRef="usd">120100000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <esp:BacklogPercentageOfRecognitionsYearOne contextRef="c99" decimals="3" id="ixv-7343" unitRef="pure">0.166</esp:BacklogPercentageOfRecognitionsYearOne>
    <esp:BacklogPercentageOfRecognitionsYearTwo contextRef="c99" decimals="3" id="ixv-7344" unitRef="pure">0.374</esp:BacklogPercentageOfRecognitionsYearTwo>
    <esp:BacklogPercentageOfRecognitionsYearThree contextRef="c99" decimals="3" id="ixv-7345" unitRef="pure">0.076</esp:BacklogPercentageOfRecognitionsYearThree>
    <esp:BacklogPercentageOfRecognitions contextRef="c99" decimals="3" id="ixv-7346" unitRef="pure">0.384</esp:BacklogPercentageOfRecognitions>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="c0" id="ixv-6143">&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. Similarly, the Company would be required to disclose income taxes paid (net of refunds received) equal to or greater than five percent
of 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;&#160;&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;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-6168">&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. Accordingly,
the shares purchased by the ESOP are reported as Unearned ESOP shares in the balance sheets and the statements 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 $163,067
and $94,175 for the three-month periods ended December 31, 2024 and 2023, respectively. ESOP compensation expense was $286,262 and $183,364
for the six-month periods ended December 31, 2024 and 2023, 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 December
31, 2024 and 2023 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;December 31, 2024&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;December 31, 2023&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: justify; 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;385,641&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;440,801&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: justify"&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;10,835&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;11,080&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: justify; 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;200,652&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;222,565&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: justify; 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;597,128&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;674,446&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;6,049,658&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;4,161,966&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;&#160;&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 six months ended December
31, 2024 and 2023, 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 six months ended December 31, 2024 and 2023 totaled 65,491 and 44,157 shares, respectively.&lt;/p&gt;</esp:EmployeeStockOwnershipPlanTextBlock>
    <esp:EmployeeStockOwnershipPlanHoursWorked contextRef="c100" decimals="0" id="ixv-7347" unitRef="pure">1000</esp:EmployeeStockOwnershipPlanHoursWorked>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c101" decimals="0" id="ixv-7348" unitRef="usd">163067</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c102" decimals="0" id="ixv-7349" unitRef="usd">94175</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c103" decimals="0" id="ixv-7350" unitRef="usd">286262</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c104" decimals="0" id="ixv-7351" unitRef="usd">183364</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock contextRef="c0" id="ixv-6173">&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 December
31, 2024 and 2023 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;December 31, 2024&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;December 31, 2023&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: justify; 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;385,641&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;440,801&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: justify"&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;10,835&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;11,080&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: justify; 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;200,652&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;222,565&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: justify; 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;597,128&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;674,446&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;6,049,658&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;4,161,966&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-7352"
      unitRef="shares">385641</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares
      contextRef="c52"
      decimals="INF"
      id="ixv-7353"
      unitRef="shares">440801</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7354"
      unitRef="shares">10835</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares
      contextRef="c52"
      decimals="INF"
      id="ixv-7355"
      unitRef="shares">11080</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfCommittedToBeReleasedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares
      contextRef="c2"
      decimals="INF"
      id="ixv-7356"
      unitRef="shares">200652</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares
      contextRef="c52"
      decimals="INF"
      id="ixv-7357"
      unitRef="shares">222565</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP
      contextRef="c2"
      decimals="INF"
      id="ixv-7358"
      unitRef="shares">597128</us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP>
    <us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP
      contextRef="c52"
      decimals="INF"
      id="ixv-7359"
      unitRef="shares">674446</us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP>
    <us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue contextRef="c2" decimals="0" id="ixv-7360" unitRef="usd">6049658</us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue>
    <us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue contextRef="c52" decimals="0" id="ixv-7361" unitRef="usd">4161966</us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="c103"
      decimals="0"
      id="ixv-7362"
      unitRef="shares">65491</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="c104"
      decimals="0"
      id="ixv-7363"
      unitRef="shares">44157</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <ecd:Rule10b51ArrTrmntdFlag contextRef="c4" id="ixv-7364">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:Rule10b51ArrAdoptedFlag contextRef="c4" id="ixv-7365">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrTrmntdFlag contextRef="c4" id="ixv-7366">false</ecd:NonRule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrAdoptedFlag contextRef="c4" id="ixv-7367">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="c65"
      id="hidden-fact-9"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c65"
      id="hidden-fact-10"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c67"
      id="hidden-fact-11"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c68"
      id="hidden-fact-12"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c68"
      id="hidden-fact-13"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c70"
      id="hidden-fact-14"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="c85"
      id="hidden-fact-15"
      unitRef="usd"
      xsi:nil="true"/>
    <esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisedWeightedAverageRemainingContractualTerm contextRef="c87" id="hidden-fact-16" xsi:nil="true"/>
    <esp:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsForfeitedAndExpiredWeightedAverageRemainingContractualTerm contextRef="c87" id="hidden-fact-17" xsi:nil="true"/>
    <dei:EntityCentralIndexKey contextRef="c0" id="ixv-7388">0000033533</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="c0" id="ixv-7389">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus contextRef="c0" id="ixv-7390">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="c0" id="ixv-7391">Q2</dei:DocumentFiscalPeriodFocus>
    <dei:CurrentFiscalYearEndDate contextRef="c0" id="ixv-7392">--06-30</dei:CurrentFiscalYearEndDate>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
